OKW: приборные корпуса из Германии

Программирование МК. Быстрый старт.. Что мне нужно?

Страница 2 из 3
Banned
 
Регистрация: 21.04.2012
Адрес: южнее Дуная
Сообщений: 4,318
Репутация: 417
498 352
141 0
 
04.09.2013 11:55 #11
......началось!.....а что я говорил!?....сразу пригнул на пике12Ф6ххх....
Оценка
К 2029 году в России прогнозируется увеличение числа зарядных станций до 40 000. При этом отечественный рынок электротранспорта имеет климатические, потребительские и географические особенности. Для успешной разработки и построения инфраструктуры станций заряда в России идеальным вариантом является использование решений и электронных компонентов китайских производителей – лидеров индустрии электротранспорта и возобновляемой энергетики, которые уже представлены в КОМПЭЛ.
Эксперт
 
Аватар для DmitriyVDN
 
Регистрация: 08.11.2009
Сообщений: 2,310
Репутация: 639
619 131
34 9
 
04.09.2013 18:10 #12
Цитата:
Сообщение от valerik88
Товарищи! Как насчёт этого китайского программатора за 300р?
х..ороший програматор недавно здесь обсуждали, пришел уже мертвым....
Цитата:
Сообщение от valerik88
Как зажеч светодиод? В инете куча примеров где слишком много кода.. Я нашёл неплохую статью по ассемблеру для picов.. начал что то писать.. но пока не получается.
судя по коду статейка по ассемблеру г-на Коробейникова..., обычно после прочтения его перлов и выходит нечто подобное....
1. нет слова конфигурации
2. выводы не инициализированны как выходы
3. не отключен компаратор
4. не отключен АЦП
5. даже если п1-4 выполнены ваш код будет выполнен с учетом ЧМЗ те работать не будет...
ЗЫ: я же вроде дал ссылку на даташиты или нет?
Оценка
Самыми лучшими параметрами по энергоемкости, сроку хранения, температурному диапазону и номинальному напряжению обладают батарейки литий-тионилхлоридной электрохимической системы. Но при длительном хранении происходит процесс пассивации. Разберем в чем плюсы и минусы, как можно ее избежать или уменьшить последствия и как проводить депассивацию батареек на примере продукции и рекомендаций компании FANSO EVE Energy.
Эксперт
 
Аватар для DmitriyVDN
 
Регистрация: 08.11.2009
Сообщений: 2,310
Репутация: 639
619 131
34 9
 
04.09.2013 19:28 #13
уже это писал , но повторюсь....
в эксплоаре находим папку c:\Program Files\Microchip\MPASM Suite\Template\Code\ в ней находим нужный нам файл 12F683TEMP.ASM - стандартная заготовка для кода...
находим в папке мрлаба c:\Program Files\Microchip\MPASM Suite\ заголовочный файл p12f683.inc
создаем папку будущего проэкта
оба файла копируем в нее....
создаем новый проэкт, в процессе создания проекта
1 обзываем его
2 помещаем в свою папку
3 добавляем в него эти два файла
После этого у вас в проекте будут доступны оба файла... в инклюде (*.inc) хранится описание всех регистров и их битов, в асмовском файле удаляем лишние комментарии и пишем свою прогу....
Код:
;**********************************************************************
;                                                                     *
;    Files Required: P12F683.INC                                      *
;                                                                     *
;**********************************************************************
;                                                                     *
;    Notes:                                                           *
;                                                                     *
;**********************************************************************

	list      p=12F683        ; list directive to define processor
	#include <p12F683.inc>    ; processor specific variable definitions

	errorlevel  -302          ; suppress message 302 from list file

	__CONFIG   _FCMEN_ON & _IESO_OFF & _CP_OFF & _CPD_OFF & _BOD_OFF & _MCLRE_ON & _WDT_OFF & _PWRTE_ON & _INTRC_OSC_NOCLKOUT 

; '__CONFIG' directive is used to embed configuration word within .asm file.
; The lables following the directive are located in the respective .inc file.
; See data sheet for additional information on configuration word settings.




;***** VARIABLE DEFINITIONS
w_temp        EQU     0x7E        ; variable used for context saving 
status_temp   EQU     0x7F        ; variable used for context saving






;**********************************************************************
	ORG     0x000             ; processor reset vector
	goto    init              ; go to beginning of program
	

	ORG     0x004             ; interrupt vector location
	movwf   w_temp            ; save off current W register contents
	movf	STATUS,w          ; move status register into W register
	movwf	status_temp       ; save off contents of STATUS register


; isr code can go here or be located as a call subroutine elsewhere


	movf    status_temp,w     ; retrieve copy of STATUS register
	movwf	STATUS            ; restore pre-isr STATUS register contents
	swapf   w_temp,f
	swapf   w_temp,w          ; restore pre-isr W register contents
	retfie                    ; return from interrupt
;*******************************************************
;* инициализация МК
;*******************************************************
init: 
   BANKSEL CMCON0 ; 
   MOVLW H’7’            ;отключаем 
   MOVWF CMCON0   ;компараторы

   BANKSEL ANSEL ;  отключаем 
   CRLF ANSEL        ;  АЦП, все выводы цыфровые

   BANKSEL GPIO ;
   CRLF  GPIO ;    устанавливаем на выходах лог0

   BANKSEL TRISIO ;   вкючаем
   CRLF  TRISIO ;   все выводы - как  выходы       

;*******************************************************
;* главный цикл
;*******************************************************
main:

; здесь пишем свою программу
 
          

     goto main



; initialize eeprom locations

	ORG	0x2100
	DE	0x00, 0x01, 0x02, 0x03


	END                       ; directive 'end of program'
Оценка
Новичок
 
Регистрация: 01.09.2013
Сообщений: 16
Репутация: 11
1 8
0 0
 
04.09.2013 20:23 #14
Всё сделал как Вы написали.. даже нашёл в коде ошибку (почему то у Вас в блоке с инициализацией в команде CRLF буква С - кирилицей написана 0_0 )
В любом случае, я так и не смог подать сигнал на ножку..
Вставлял в главный цикл команду BSF GPIO,GP2
Вставлял эту команду перед циклом...
Вставлял перед этой командой BANKSEL GPIO
Индикаторы на ножках в Proteus не мигают.. В чём я не прав?
Оценка
Эксперт
 
Аватар для DmitriyVDN
 
Регистрация: 08.11.2009
Сообщений: 2,310
Репутация: 639
619 131
34 9
 
04.09.2013 20:54 #15
в том что:
1.
Цитата:
__CONFIG _FCMEN_ON & _IESO_OFF & _CP_OFF & _CPD_OFF & _BOD_OFF & _MCLRE_ON & _WDT_OFF & _PWRTE_ON & _INTRC_OSC_NOCLKOUT
включен аппаратный сброс...
вывод MCLR должен быть подтянут к +пит.
2.
Цитата:
5. даже если п1-4 выполнены ваш код будет выполнен с учетом ЧМЗ те работать не будет...
ЧМЗ - чтение/модификация/запись , любая команда обращения к порту сначала читает действительное значение порта модифицирует его и записывает в порт, простым языком: правильное значение после выполнения команды произойдет только в случае если логические уровни приняли нужное значение перед выполнением команды... ссылки на документацию я вам дал , прочитайте раздел порты ввода/вывода...
Оценка
Новичок
 
Регистрация: 01.09.2013
Сообщений: 16
Репутация: 11
1 8
0 0
 
04.09.2013 21:00 #16
Цитата:
Сообщение от DmitriyVDN
в том что:
1.
включен аппаратный сброс...
вывод MCLR должен быть подтянут к +пит.
2. ЧМЗ - чтение/модификация/запись , любая команда обращения к порту сначала читает действительное значение порта модифицирует его и записывает в порт, простым языком: правильное значение после выполнения команды произойдет только в случае если логические уровни приняли нужное значение перед выполнением команды... ссылки на документацию я вам дал , прочитайте раздел порты ввода/вывода...
Заработало! Спасибо тебе добрый человек! Век тебя помнить буду)
Оценка
Эксперт
 
Аватар для DmitriyVDN
 
Регистрация: 08.11.2009
Сообщений: 2,310
Репутация: 639
619 131
34 9
 
04.09.2013 21:27 #17
Цитата:
Сообщение от valerik88
Заработало!
сомневаюсь.....
в архиве иллюстрация того что такая последовательность команд
Код:
    BANKSEL GPIO
    bsf  GPIO,GP0   
    bsf  GPIO,GP1   
    bsf  GPIO,GP2
не работает, в реале емкости конденсаторов достаточно на порядок меньше , фактически бывает достаточно емкости монтажа...
Вложения
Тип файла: rar ckool.rar (8.3 Кб, 0 просмотров)
Оценка
Новичок
 
Регистрация: 01.09.2013
Сообщений: 16
Репутация: 11
1 8
0 0
 
05.09.2013 17:57 #18
К сожалению у меня не открывается проект.. протеус более старой версии.

Не понял почему не работает.. у меня вроде работает..
Хотя есть непонятные моменты..
Почему некоторые светодиоды горят менее ярко.. и индикаторы на ножках погасли?
Последний раз редактировалось valerik88; 05.09.2013 в 19:55.
Оценка
Новичок
 
Регистрация: 01.09.2013
Сообщений: 16
Репутация: 11
1 8
0 0
 
06.09.2013 17:54 #19
Установил 8ой протеус.. там аналогичная схема работает так, т.е. все индикаторы на ножках горят
Оценка
Эксперт
 
Аватар для DmitriyVDN
 
Регистрация: 08.11.2009
Сообщений: 2,310
Репутация: 639
619 131
34 9
 
06.09.2013 23:47 #20
Цитата:
Сообщение от valerik88
там аналогичная схема работает так, т.е. все индикаторы на ножках горят
сочувствую...
библиотеки моделей светодиодов в 7-ке и 8-ке одни и те же...
один и тот же диод
при разных настройках : д1,д2 -аналоговая модель, д3-цифровая

к тому же подключение СД к МК без токоограничивающих резисторов мягко говоря не удачное решение...
Изображения
Тип файла: jpg 9877.jpg (78.6 Кб, 0 просмотров)
Последний раз редактировалось DmitriyVDN; 06.09.2013 в 23:54.
Оценка
Ответ
Страница 2 из 3
Метки
микроконтроллер, первый шаг, программатор
Похожие темы
Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход
Электронные компоненты. Бесплатная доставка по России
Часовой пояс GMT +3, время: 07:27.
Обратная связь РадиоЛоцман Вверх