помогите реализовать PIC12F629 + 74HC595
Добавлено: Пн янв 11, 2010 15:51:39
Всем здравствуйте. У меня давно в голове есть проект который хотел реализовать, это механическая развертка на велосипедное колесе. Так как я любитель велосипеда, после просмотра разного рода видео на эту тему особенно на влек, я был просто опьянен данной идеей, да и круто выглядит такая штука
. Ну как всегда нечего толкового не получается у меня
, не хватает знаний для реализации данного проека . Поюзал инет, относительно 74HC595, ну вроде как немного понял, как загнать в нее данные и вывести на желаемое железо, ну вот решил оборотится к вам, для полного разбора и решения данной проблемы. С англиским у меня туго, стараюсь хоть как нибудь перевести даташит, ну все коса и корява получается, так что помощи прошу от вас максимальной . Вот сома суть вопроса-
то что я смог понять на счет 74HC595
Устанавливаем нужный нам лог на выводе 14выв_DS,
заганяем саразу все нужные бити по ноге 11выв_SH и дергаем один раз за ногу 12выв_ST, для продвижения данных по регистру и вывода их на ноги Q0-Q7.
А теперь что мне не понятно, а не понятное мне многое
как вывести на один порт PIC-а, к примеру 8 бит данных “11110001″, через какое время делать RESET регистра. как я только не писал программно и не симулировал в ПРОТЕУСЕ не чего не получается у меня. Вот сам наглядная программа
LIST P=PIC12F629
#include “P12F629.INC”
__CONFIG _INTRC_OSC_NOCLKOUT & _MCLRE_OFF & _CP_OFF & _CPD_OFF & _WDT_OFF & _BODEN_ON & _PWRTE_ON
;——————————–
ORG 0
;——————————-
BCF STATUS,RP0
MOVLW 0×07
MOVWF CMCON
BSF STATUS,RP0
MOVLW 0×00
MOVWF TRISIO
BCF STATUS,RP0
;——————————
START BSF GPIO,1 ; устанавливаем лог 1 на порте GP1 = на выаод 14 74HС595 (DATA)
BSF GPIO,4 ; устанавливаем лог 1 на порте GP4 = на выаод 10 74HС595 (RESET)
GOTO BIT
;——————————–
BIT BSF GPIO,0 ; вводим лог 1 на в регистор 74HС595 11 выв.(S_CP)
BSF GPIO,2 ; устанавливаем лог 1 на порте GP2 для продвежения
; днаннх по ригистру и вывода их на Q0
;—————————–
GOTO START
;—————————– GPIO,6;—– movwf Sec_1 mo movwDELAY ;—————————
END
По сути должна появиться логическая 1 на выводе регистра Q0, но все глухо
то что я смог понять на счет 74HC595
Устанавливаем нужный нам лог на выводе 14выв_DS,
заганяем саразу все нужные бити по ноге 11выв_SH и дергаем один раз за ногу 12выв_ST, для продвижения данных по регистру и вывода их на ноги Q0-Q7.
А теперь что мне не понятно, а не понятное мне многое
как вывести на один порт PIC-а, к примеру 8 бит данных “11110001″, через какое время делать RESET регистра. как я только не писал программно и не симулировал в ПРОТЕУСЕ не чего не получается у меня. Вот сам наглядная программа
LIST P=PIC12F629
#include “P12F629.INC”
__CONFIG _INTRC_OSC_NOCLKOUT & _MCLRE_OFF & _CP_OFF & _CPD_OFF & _WDT_OFF & _BODEN_ON & _PWRTE_ON
;——————————–
ORG 0
;——————————-
BCF STATUS,RP0
MOVLW 0×07
MOVWF CMCON
BSF STATUS,RP0
MOVLW 0×00
MOVWF TRISIO
BCF STATUS,RP0
;——————————
START BSF GPIO,1 ; устанавливаем лог 1 на порте GP1 = на выаод 14 74HС595 (DATA)
BSF GPIO,4 ; устанавливаем лог 1 на порте GP4 = на выаод 10 74HС595 (RESET)
GOTO BIT
;——————————–
BIT BSF GPIO,0 ; вводим лог 1 на в регистор 74HС595 11 выв.(S_CP)
BSF GPIO,2 ; устанавливаем лог 1 на порте GP2 для продвежения
; днаннх по ригистру и вывода их на Q0
;—————————–
GOTO START
;—————————– GPIO,6;—– movwf Sec_1 mo movwDELAY ;—————————
END
По сути должна появиться логическая 1 на выводе регистра Q0, но все глухо