Форум РадиоКот https://radiokot.ru/forum/ |
|
Запись данных через SPI во SRAM 23a256. Pic18 https://radiokot.ru/forum/viewtopic.php?f=58&t=142309 |
Страница 1 из 1 |
Автор: | kotbaris1 [ Вт фев 21, 2017 22:52:17 ] | ||
Заголовок сообщения: | Запись данных через SPI во SRAM 23a256. Pic18 | ||
Привет. Такая тема. Есть виртуальный терминал, в нем я ввожу значения любые и они должны через SPI писаться во внешнее озу. SPI дебаггер показывает что все ОК, какие-то данные пишутся, но если посмотреть в память 23a256 то там все чисто... Как инициализирую SPI Код: ;SPI initialization bsf SSPSTAT,SMP ; опрос входа в конце периода вывода данных bsf SSPSTAT,CKE ; по какому фрону будет перед-ся сигнал bsf SSPCON1,CKP ; полярность bcf SSPCON1, SSPM3 bcf SSPCON1, SSPM2 bcf SSPCON1, SSPM1 bcf SSPCON1, SSPM0 ;f/4 bsf TRISC,SDI ; вход данных 1 bcf TRISC,SDO ; выход данных 0 bcf TRISC,SCK ; ведущий в 0 bsf TRISA,SS ; в 1 bsf SSPCON1,SSPEN ;включаем модуль модуль SPI Как пишу данные в SRAM Код: SEND_TO_SPI bcf TRISA,SS MOVF 0X20, W MOVWF SSPBUF ;Передать новые данные ;MOVF SSPBUF, W ;Загрузить в W значение из SSPBUF LOOP clrwdt BTFSS SSPSTAT, BF ;Данные приняты? GOTO LOOP ;Нет RETURN Скрины процесса Что я делаю не так и как следует делать?
|
Автор: | Albert_V [ Вт фев 21, 2017 23:34:57 ] |
Заголовок сообщения: | Re: Запись данных через SPI во SRAM 23a256. Pic18 |
kotbaris1 писал(а): ...Что я делаю не так и как следует делать? Может быть, вначале, имеет смысл почитать документацию на 23A256 (хотя бы, с 5-ой страницы)? |
Автор: | kotbaris1 [ Вт фев 21, 2017 23:53:59 ] |
Заголовок сообщения: | Re: Запись данных через SPI во SRAM 23a256. Pic18 |
Albert_V писал(а): kotbaris1 писал(а): ...Что я делаю не так и как следует делать? Может быть, вначале, имеет смысл почитать документацию на 23A256 (хотя бы, с 5-ой страницы)? Да, читал. Т.е. мне нужно отправить сначала данные через sspbuf, потом 16-битный адрес куда писать данные, а потом инструкцию того, чтоб память работала на запись? Так не прокатило. |
Автор: | Albert_V [ Ср фев 22, 2017 00:01:45 ] |
Заголовок сообщения: | Re: Запись данных через SPI во SRAM 23a256. Pic18 |
kotbaris1 писал(а): Да, читал. Т.е. мне нужно отправить сначала данные через sspbuf, потом 16-битный адрес куда писать данные, а потом инструкцию... Да как вы её читаете???? Instruction>16-bit Address>Data. (FIGURE 2-1(2)) |
Автор: | kotbaris1 [ Ср фев 22, 2017 00:14:33 ] |
Заголовок сообщения: | Re: Запись данных через SPI во SRAM 23a256. Pic18 |
Albert_V писал(а): kotbaris1 писал(а): Да, читал. Т.е. мне нужно отправить сначала данные через sspbuf, потом 16-битный адрес куда писать данные, а потом инструкцию... Да как вы её читаете???? Instruction>16-bit Address>Data. (FIGURE 2-1(2)) Так с лево на право, по оси времени) Ну мб я аутист, то что даташиты по китайски читать надо не знаю)) Все пашет, благодарю за помощь и низко кланяюсь) вы не представляете как сильно помогли. Спасибо код для тех, у кого возникнет подобная проблема Код: movlw 0x2
MOVWF SSPBUF LOOP2 clrwdt BTFSS SSPSTAT, BF GOTO LOOP2 movlw 0x00 MOVWF SSPBUF LOOP3 clrwdt BTFSS SSPSTAT, BF GOTO LOOP3 movlw 0x00 MOVWF SSPBUF LOOP4 clrwdt BTFSS SSPSTAT, BF GOTO LOOP4 movlw d'10' MOVWF SSPBUF LOOP1 clrwdt BTFSS SSPSTAT, BF GOTO LOOP1 |
Автор: | Albert_V [ Ср фев 22, 2017 00:17:17 ] |
Заголовок сообщения: | Re: Запись данных через SPI во SRAM 23a256. Pic18 |
Незачто. Все временные диаграммы читаются слева направо. Можно ещё ориентироваться по номеру SCK..... Удачи! |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |