vasto 发表于 2018-10-24 15:48:39

ATTiny13如何发送byte ?

ATTiny13 小巧,正好有这个片子。想学一下发送 byte package ,不知道如何实现??

PB2=SCK=Clock
PB0=MOSI=DataOut

我想循环发送一串 8Byte 的数据例如 0xFF 0xFE 0X88 0X7C 0X7E 0XFF 0XFF 0XFE

这个怎么实现?

:handshake谢谢

huxiangming 发表于 2018-10-24 17:05:53

看你用什么编译器了
如用CVAVR可以直接位定义
#define DataOut    PORTB.0
#define Clock      PORTB.2

其他可以这样定义
#define DataOut_Set (PORTB |=(1 << 0))
#define DataOut_Clr(PORTB &=~(1 << 0))
#define Clock_Set (PORTB |=(1 <<2))
#define Clock_Clr(PORTB &=~(1 << 2))



washu 发表于 2018-10-25 01:46:15

PB2=SCK=Clock
PB0=MOSI=DataOut
+++++++++++++++++++
AVR 配置 SPCR 寄存器(MSTR 为 1)为主机后,往 SPDR 寄存器写入数据,则数据会自动在 MOSI 输出,时钟脚的时钟频率也是 SPCR 寄存器配置的。

可是我看了下 tn13 手册,貌似它没有 SPI 外设接口唷 :lol 0D~0F 寄存器也是空的。

btw. 可以自己写一个软 SPI

vasto 发表于 2018-10-28 18:02:25

huxiangming 发表于 2018-10-24 17:05
看你用什么编译器了
如用CVAVR可以直接位定义
#define DataOut    PORTB.0


谢谢提供参考。

我用的是 ARDUINO 1.8.5

vasto 发表于 2018-10-28 18:03:51

washu 发表于 2018-10-25 01:46
PB2=SCK=Clock
PB0=MOSI=DataOut
+++++++++++++++++++


我到处找,都找不到ATTiny13的 SPI.h

:'(

但是这个发送 Byte packet 的,确实是可以的(我烧过别人写的 hex,是可以的)

washu 发表于 2018-11-1 10:20:48

vasto 发表于 2018-10-28 18:03
我到处找,都找不到ATTiny13的 SPI.h




软 SPI 阿亲 :lol 不是所有设备都有 SPI 或 SPI 都能正好用上,没有咋办?写个软的 ;P

szxw 发表于 2018-11-1 10:28:59

页: [1]
查看完整版本: ATTiny13如何发送byte ?