本帖最后由 sincomaster 于 2018-8-3 18:03 编辑 近段时间才学完C语言,现在开始学习单片机.' }; `7 ~7 i, \7 Y$ h 在这贴子分享学习过程和遇见的问题,有什么不对的地方还请多指教. r* E& w$ U+ l 开发板:STM8S DEV BOARD(自己做的). }2 ^9 v1 c# m 主控:STM8S207CBT6 显示:OLED(SSD1306),支持IIC和SPI两种接口/ K7 A& R% y) J9 J8 X 按键:TTP223-TOUCH KEY+3X4矩阵按键(原理图设计有误,使1.5.9键值相同)" V0 O2 ~+ X4 _. j 接口:含24L01无线接口,红外接口,18B20接口0 H8 n0 s+ n' u 电源:UCB5V供电,支持输出5V和3.3V6 g1 P0 o( o4 O4 {% A$ C3 v" e d/ N 指示:GPIOB外接8个LED灯 语音:板上有语音电路; O% C# Y5 g5 r* J- d+ i 音频:喇叭和蜂鸣器/ i) w# X ]+ T% b6 V5 v9 l, d. r 晶振:HSE(16MHz)& }: O* N+ Z2 N6 s 时钟:HYM8563 存储:AT24C64D) m, h3 T" w4 e6 z: G1 F P3 z$ E& I 字库:GT20L16S1Y |
这是自已做的开发板:
, A% ?1 W6 k3 q9 V( C
, S- v* Z2 \; T/ [# O0 t
STM8S的延时程序用示波器测试了一下,和自已算出来的有误差,今天测试和前两的时间有一点点差,不知是不是我切换到外部时钟的原因,数据手册上说的1/2周期指令不清楚是算多少,我是按1周期指令来算的,% F0 w) ]6 c& q& W' a/ G! N0 Q
网上也有说16M时钟算出来有差,但8M时钟不会差,我没去试
还有就是5us延时是,IO推挽输出波形较好,用开漏PE1输出上升沿很慢,不清楚是否正常,PE1外部上拉4.7K.0 I S+ D, o/ c8 V( k; p
9 f7 h2 S3 b1 F' r# {
1ms
5us
PE1ç5usä¸å沿
10ms
50us
500us
板很漂亮
经地几天的努力,IIC驱动SSD1306 OLED终于成协,开心中........中间有很多问题,都 一个一个解决,如果有人需要给我到时传上来,
楼主,请教个问题,STLINK V2使用的时候你的开发板单独供电了吗,不单独供电有什么影响呢?
! G- U, `: ?! \7 _3 Z
另外你遇到的问题能不能传上来,我学习借鉴一下,先谢谢了
我自己有两个ST_LINK,1个是正版,另一个是30几块钱的,两个我都拆开过,ST_LINK内没有给SWIM这4根线供电,所以开发板要有电才行,我是自学,所以学习中有很多问题,自己慢慢解决,我用硬件IIC,刚调试也碰到网上说的停在while(!(I2C_SR1 & 0x02));这句就不动了,一时半会也说不清楚,我现在也还没解决调用字符数组的问题,