где найти RTC программ с использованием Даллас DS1307?

W

weifeng

Guest
привет,

Мне необходимо найти с помощью программы RTC DS1307 чипа.Я использую PIC18F452, MPLAB IDE/C18 компилятора.Может ли одно скажи мне, где я могу найти его?спасибо.

 
Ochrona danych jest kluczowa z punktu widzenia systemów bezpieczeństwa w chmurze. Steve Pataky z firmy FireEye wyjaśnia pomysły technologiczne firmy na najbardziej aktualne zagrożenia w wirtualnym świecie.

Read more...
 
Боюсь, я не понимаю этого вопроса.
В DS1307 является RTC.Все, что вам нужно сделать действительно использовать I2C интерфейс для чтения / записи в реестре.

 
см. по этой ссылке:
http://www.sixca.com/micro/pic/ds1307/
ее C-исходным кодом (ссылка)
находится в нижней части этой страницы<img src="http://www.edaboard.com/images/smiles/icon_biggrin.gif" alt="Очень веселый" border="0" />Привет,
Davood.

 
привет.спасибо за ссылку на сайте.свою программу им найти.спасибо много.

<img src="http://www.edaboard.com/images/smiles/icon_smile.gif" alt="Улыбка" border="0" />
 
Привет,

Проверить это:

DS1307 Часы реального времени, например с PIC16f88:

http://www.sparkfun.com/datasheets/Components/rtc-demo.zip

 
Здравствуйте,
Если вы используете CCS C компилятора вы получите образец кода для DS1307.

Пока

 
привет всем.REALI спасибо всем за помощь, оказанную.

<img src="http://www.edaboard.com/images/smiles/icon_smile.gif" alt="Улыбка" border="0" />
 
привет,
о ок TIS сайте = http://www.sixca.com/micro/pic/ds1307/
исходный код в нем, я получил сумму части заявления, не совсем понимаю.
Какая # использования
# предохранители
# использовать????
в любом случае при попытке интерфейс wif мои чип,
в этой части cums как ошибку.
так же кто знает, как нужно изменить его?
спасибо.

 
Привет,
Я только сейчас работают с DS1307 у меня четыре 7-сегментный часы проекта.Вот код.Я пишу ее в Привет-тек С ПОС.

первым заявить:

Неподписанный символ rtcvalue_bin, rtcvalue_bcd, rtcreg;
Неподписанный символ rtensec, rsec, rtenmin, rmin, rtenhour, rhour, rday, rtendate, rdate, rmonth, rtenmonth, rtenyear, ryear;

недействительным rtc_read (неподписанные символ * rtc_buffer);

Тогда:

read_ds недействительным (недействительными)
(
Неподписанный символ РТК [8];
rtc_read (RTC); / / РТК читать подпрограмму
rsec = (РТК [0]
И 0x0F); / / сек
rtensec = (РТК [0]>> 4);
rmin = (RTC [1]
И 0x0F); / / мин
rtenmin = (RTC [1]>> 4);
rhour = (RTC [2]
И 0x0F); / / час
rtenhour = (RTC [2]>> 4);
rday = (RTC [3]
И 0x0F); / / будний
rdate = (RTC [4]
И 0x0F); / / дата
rtendate = (RTC [4]>> 4);
rmonth = (РТС [5]
И 0x0F);
rtenmonth = ((РТС [5]
И 0b00010000)>> 4);
ryear = (RTC [6]
И 0x0F); / / год
rtenyear = (RTC [6]>> 4);
)

недействительным rtc_set (неподписанные символ rtcreg)
(
SEN = 1; / / отправить начать СНВ-битных
а (SEN); / / и ждать его очистить
ACKDT = 0; / / признаете битных

SSPIF = 0;
SSPBUF = 0xD0; / / установить адрес устройства 0xd0 / / записи SLAVE АДРЕС
в то время как (! SSPIF); / / ждать прервать
SSPIF = 0; / / то ясно.

SSPBUF = rtcreg / / Реестр выберите RTC WORD АДРЕС
в то время как (! SSPIF); / /
SSPIF = 0; / /

SSPBUF = rtcvalue_bcd; / / запись данных RTC ДАННЫХ 0
в то время как (! SSPIF); / / ждать прервать
SSPIF = 0; / / то ясно.

ПЕН-клуб = 1; / / отправить стоповый бит STOP
а (PEN);
)

недействительным rtc_read (неподписанные символ * rtc_buffer) / / I2C RTC читать 8 байт
(
SEN = 1; / / отправить начать СНВ-битных
а (SEN); / / и ждать его очистить
ACKDT = 0; / / признаете битных

SSPIF = 0;
SSPBUF = 0xd0 / / установить адрес устройства 0xd0 / / записи SLAVE АДРЕС
в то время как (! SSPIF); / / ждать прервать
SSPIF = 0; / / то ясно.

SSPBUF = 0; / / читать с адреса 0 = зарегистрироваться 0, RTC WORD адрес - контроль 1
в то время как (! SSPIF); / / ждать прервать
SSPIF = 0; / / то ясно.

RSEN = 1; / / отправить на неоднократные начать битных ПОВТОРНЫЙ СТАРТ
а (RSEN); / / и ждать его очистить

SSPIF = 0;
SSPBUF = 0xd1 / / установить адрес устройства - читать WORD адрес - CONTROL 2
в то время как (! SSPIF); / / ждать прервать
SSPIF = 0; / / то ясно.

RCEN = 1; / / начать получать ПРОЧИТАЙТЕ
И ACK буферной 0
в то время как (! STAT_BF); / / ждать данных
rtc_buffer [0] = SSPBUF; / / и получить его / / буфер
ACKEN = 1; / / начало признать последовательность
а (ACKEN); / / ждать ACK.последовательность, чтобы положить конецRCEN = 1; / / начать получать ПРОЧИТАЙТЕ
И ACK буфера 1
в то время как (! STAT_BF); / / ждать данных
rtc_buffer [1] = SSPBUF; / / и получить его / / буфер
ACKEN = 1; / / начало признать последовательность
а (ACKEN); / / ждать ACK.последовательность, чтобы положить конец

RCEN = 1; / / начать получать ПРОЧИТАЙТЕ
И ACK буфером 2
в то время как (! STAT_BF); / / ждать данных
rtc_buffer [2] = SSPBUF; / / и получить его / / буфер
ACKEN = 1; / / начало признать последовательность
а (ACKEN); / / ждать ACK.последовательность, чтобы положить конец

RCEN = 1; / / начать получать ПРОЧИТАЙТЕ
И ACK буферной 3
в то время как (! STAT_BF); / / ждать данных
rtc_buffer [3] = SSPBUF; / / и получить его / / буфер
ACKEN = 1; / / начало признать последовательность
а (ACKEN); / / ждать ACK.последовательность, чтобы положить конец

RCEN = 1; / / начать получать ПРОЧИТАЙТЕ
И ACK буферной 4
в то время как (! STAT_BF); / / ждать данных
rtc_buffer [4] = SSPBUF; / / и получить его / / буфер
ACKEN = 1; / / начало признать последовательность
а (ACKEN); / / ждать ACK.последовательность, чтобы положить конец

RCEN = 1; / / начать получать ПРОЧИТАЙТЕ
И ACK буферной 5
в то время как (! STAT_BF); / / ждать данных
rtc_buffer [5] = SSPBUF; / / и получить его / / буфер
ACKEN = 1; / / начало признать последовательность
а (ACKEN); / / ждать ACK.последовательность, чтобы положить конец

RCEN = 1; / / начать получать ПРОЧИТАЙТЕ
И ACK буферной 6
в то время как (! STAT_BF); / / ждать данных
rtc_buffer [6] = SSPBUF; / / и получить его / / буфер
ACKEN = 1; / / начало признать последовательность
а (ACKEN); / / ждать ACK.последовательность, чтобы положить конец

RCEN = 1; / / начать получать READ LAST
И НЕТ ACK буфер 7
в то время как (! STAT_BF); / / ждать данных
rtc_buffer [7] = SSPBUF; / / и получить его / / buffer7
ACKDT = 1; / / не признают за последний байт

ПЕН-клуб = 1; / / отправить стоповый бит STOP
а (PEN);
)В основной программе вы должны создать I2C автобус и использовать это, чтобы начать DS1307:

Основными недействительным (недействительными)
(
.
.
rtcreg = 0x00;
rtcvalue_bcd = 0b00000000;
rtc_set (rtcreg);
DelayMs (10);
в то время как (1)
(
.
.
.Она должна работать

 
привет,
Лас часть программы, которая заключается в том, чтобы начать I2C автобусе,
то "точка точек" в период и после должны добавить что-то ритуал?Что следует добавить?

 
Привет,
Я написал вам, что вам нужно для начала хотя РТК до петли, и в петлю, а писать, что вы хотите.А перед РТК блок создан I2C регистров.

 
WEIFENG ..
ДА!ЧТО РАБОТАЕТ подпрограмм можно перейти на страницу www.techdesign.be / projects.htm НА ПРОЕКТЕ ЗАГРУЗКА ..Добавлено через 6 минут:IF YOU GONNA ИСПОЛЬЗОВАНИЯ C18 Компилятор, должны изменить название биты
IE.CHANGE
а (PEN),
которая в то время как (SSPCON2bits.PEN);

 
привет,
Я попробовал программу, но ден это:

'SEN' не определен
C: \ Documents и Settings \ Пользователь \ Мои документы \ testing.c: 30: Ошибка [1101] lvalue требуется
C: \ Documents и Settings \ Пользователь \ Мои документы \ testing.c: 31: Ошибка [1105] Символ 'SEN' не определен
C: \ Documents и Settings \ Пользователь \ Мои документы \ testing.c: 32: Ошибка [1105] Символ 'ACKDT' не определен
C: \ Documents и Settings \ Пользователь \ Мои документы \ testing.c: 32: Ошибка [1101] lvalue требуется
C: \ Documents и Settings \ Пользователь \ Мои документы \ testing.c: 34: Ошибка [1105] Символ 'SSPIF' не определен
C: \ Documents и Settings \ Пользователь \ Мои документы \ testing.c: 34: Ошибка [1101] lvalue требуется
C: \ Documents и Settings \ Пользователь \ Мои документы \ testing.c: 36: Ошибка [1105] Символ 'SSPIF' не определен
C: \ Documents и Settings \ Пользователь \ Мои документы \ testing.c: 37: Ошибка [1105] Символ 'SSPIF' не определен
C: \ Documents и Settings \ Пользователь \ Мои документы \ testing.c: 37: Ошибка [1101] lvalue требуется
C: \ Documents и Settings \ Пользователь \ Мои документы \ testing.c: 40: Ошибка [1105] Символ 'SSPIF' не определен
C: \ Documents и Settings \ Пользователь \ Мои документы \ testing.c: 41: Ошибка [1105] Символ 'SSPIF' не определен
C: \ Documents и Settings \ Пользователь \ Мои документы \ testing.c: 41: Ошибка [1101] lvalue требуется
C: \ Documents и Settings \ Пользователь \ Мои документы \ testing.c: 44: Ошибка [1105] Символ 'SSPIF' не определен
C: \ Documents и Settings \ Пользователь \ Мои документы \ testing.c: 45: Ошибка [1105] Символ 'SSPIF' не определен
C: \ Documents и Settings \ Пользователь \ Мои документы \ testing.c: 45: Ошибка [1101] lvalue требуется
C: \ Documents и Settings \ Пользователь \ Мои документы \ testing.c: 47: Ошибка [1105] Символ 'ПЕН' не определен
C: \ Documents и Settings \ Пользователь \ Мои документы \ testing.c: 47: Ошибка [1101] lvalue требуется
C: \ Documents и Settings \ Пользователь \ Мои документы \ testing.c: 48: Ошибка [1105] Символ 'ПЕН' не определен
C: \ Documents и Settings \ Пользователь \ Мои документы \ testing.c: 53: Ошибка [1105] Символ 'SEN' не определен
C: \ Documents и Settings \ Пользователь \ Мои документы \ testing.c: 53: Ошибка [1101] lvalue требуется
C: \ Documents и Settings \ Пользователь \ Мои документы \ testing.c: 54: Ошибка [1105] Символ 'SEN' не определен
C: \ Documents и Settings \ Пользователь \ Мои документы \ testing.c: 55: Ошибка [1105] Символ 'ACKDT' не определен
C: \ Documents и Settings \ Пользователь \ Мои документы \ testing.c: 55: Ошибка [1101] lvalue требуется
C: \ Documents и Settings \ Пользователь \ Мои документы \ testing.c: 57: Ошибка [1105] Символ 'SSPIF' не определен
Прекращение построить на первый провал, как просила.

вышел как ошибка ....

 
Привет,
Я исходный код компилятора Keil (C51).
Извините, но вам необходимо войти в аккаунт это вложение

 
есть приложение к сведению в Далласе веб-сайте с помощью кода

 
привет,

исходный код в Далласе я попробовал уже Есть еще ошибки ...

 
привет,

при попытке построить моя программа, я стиль сталкиваются многие ошибки, в нем ...???

кто знает, HW УРЛР изменить следующим образом: недействительным read_clock (байт control_reg)???спасибо.

 
может кто-нибудь найти ошибку в этом коде?
Использование Proteus, Keil
Извините, но вам необходимо войти в аккаунт это вложение

 
Есть несколько хороших exmples на MichrochipC.com.Она также включает в себя один в реальном времени часы интерфейса ....

 
Пример кода
Извините, но вам необходимо войти в аккаунт это вложение

 

Welcome to EDABoard.com

Sponsor

Back
Top