Вс сен 04, 2016 10:05:25
Вс сен 04, 2016 10:15:59
Jack_A писал(а):кажется, вы слишком усложнили для консультируемого процесс пониманя.
Jack_A писал(а): Вроде ему надо вязаться с ЖКИ...
Блин, оказывается, речь шла о 10-битном слове.
uk8amk писал(а):Все это так, но автору темы требуется 10-битный кадр.
Вс сен 04, 2016 10:31:57
Вс сен 04, 2016 21:00:48
Вс сен 04, 2016 21:59:53
vit007 писал(а): понимаю, что когда байт будет SPDR, то МК повиснит на этой строке
Пн сен 05, 2016 08:57:57
vit007 писал(а):Если смотреть диаграмму на флешь память 25 серии то там слова настройки и пересылки по 8 бит (00000011,10101010), тут может тоже, но пока по диаграмме видно одно в 10бит.
Пн сен 05, 2016 10:20:35
Пн сен 05, 2016 12:24:54
Пн сен 05, 2016 12:27:14
Начал бы примерно с такого ногодрыганияvit007 писал(а):Все верно, мне нужно подключить oled ЖКИ по SPI...
.include "m8def.inc"
.def Temp0=R16
.def Temp1=R17
.def Temp2=R18
.def Temp3=R19
.def Temp4=R20
.def Temp5=R21
.def Temp6=R22
.equ MOSI=3
.equ CSB=2
.equ SCK=5
.equ RS=1
.equ RW=0
.cseg
.org 0
;rjmp RESET ; Reset Handler
;reti ;rjmp EXT_INT0 ; IRQ0 Handler
;reti ;rjmp EXT_INT1 ; IRQ1 Handler
;reti ;rjmp TIM2_COMP ; Timer2 Compare Handler
;reti ;rjmp TIM2_OVF ; Timer2 Overflow Handler
;reti ;rjmp TIM1_CAPT ; Timer1 Capture Handler
;reti ;rjmp TIM1_COMPA ; Timer1 CompareA Handler
;reti ;rjmp TIM1_COMPB ; Timer1 CompareB Handler
;reti ;rjmp TIM1_OVF ; Timer1 Overflow Handler
;reti ;rjmp TIM0_OVF ; Timer0 Overflow Handler
;rjmp SPI_STC ; SPI Transfer Complete Handler
;reti ;rjmp USART_RXC ; USART RX Complete Handler
;reti ;rjmp USART_UDRE ; UDR Empty Handler
;reti ;rjmp USART_TXC ; USART TX Complete Handler
;reti ;rjmp ADC_CC ; ADC Conversion Complete Handler
;reti ;rjmp EE_RDY ; EEPROM Ready Handler
;reti ;rjmp ANA_COMP ; Analog Comparator Handler
;reti ;rjmp TWSI ; Two-wire Serial Interface Handler
;reti ;rjmp SPM_RDY ; Store Program Memory Ready Handler
RESET:
ldi Temp0,high(RAMEND)
out SPH,Temp0
ldi Temp0,low(RAMEND)
out SPL,Temp0
ldi Temp0,0b00101100 ; 2-SS(CS), 3-MOSI(SDI), 4-MISO(SDO)вход, 5-SCK(SCL)
out DDRB,Temp0
OUT PORTB,Temp0
;********************************************
;выдача команды очистки дисплея
CBI PORTB,CSB
LDI R21,0<<RS|0<<RW ; будет запись команды
LDI R22,0b00000001 ; собственно команда очистки дисплея
RCALL WRITE_SPI
SBI PORTB,CSB
cycle:
rjmp cycle
;*************************
WRITE_SPI:
CLR R20
GO_WRITE:
CBI PORTB,MOSI
SBRC R21,1 ; соответствует биту RS
SBI PORTB,MOSI
CBI PORTB,SCK
RCALL PAUSE_RET
SBI PORTB,SCK
LSL R22
ROL R21
INC R20
CPI R20,10
BRLO GO_WRITE
PAUSE_RET:
RET
.EXIT
Пн сен 05, 2016 12:54:58
vit007 писал(а):Значит аппаратный SPI работает параллельно программе, может поэтому и надо ждать появления флаг, а то как понять когда собирать данный со слейва...
vit007 писал(а):я ж название контроллера написал.... шит, что ли посмотреть нельзя было...
Пн сен 05, 2016 13:29:37
vit007 писал(а):http://www.winstar.com.tw/products/oled-module/oled-character-display/weh001602c.html
я ж название контроллера написал.... шит, что ли посмотреть нельзя было...
Jack_A писал(а):думал - чел ведь знает, чего хочет .
Пн сен 05, 2016 14:07:39
vit007 писал(а):я ж название контроллера написал.... шит, что ли посмотреть нельзя было...
А при программном этого преимущества не получить...
Пн сен 05, 2016 20:36:56
Пн сен 05, 2016 22:56:49
roman.com писал(а):А можно и не проверять)) Если цикл задан жёстко, то зная время когда будет отправлен следующий байт и зная время передачи байта... можно высчитать когда в слейве появится следующий байт. Забираем из буфера байт, не дожидаясь всяких флагов))
Пн сен 05, 2016 23:21:34
Jack_A писал(а):Есть специально предусмотренный флаг, так его и нужно отслеживать, за это никто дополнительных денег не потребует.
Вт сен 06, 2016 04:09:09
roman.com писал(а):Проверка флага - лишняя строчка в программе))
Вт сен 06, 2016 05:36:14
Вт сен 06, 2016 07:20:44
Вт сен 06, 2016 12:37:57
Вт сен 06, 2016 13:03:52
Alkul писал(а):Поскольку работа с дисплеем оформляется в подпрограммах, то повторится эта команда раз или два.
Alkul писал(а):Такая дурная "экономия" не даст ничего, кроме головной боли.
Alkul писал(а):Поскольку работа с дисплеем оформляется в подпрограммах...