切换到宽版
  • 3849阅读
  • 18回复

[C51]STC8 硬件I2C OLED例程 [复制链接]

上一主题 下一主题
在线netbeetle

发帖
598
M币
851
专家
3
粉丝
7
只看该作者 10楼 发表于: 07-16
回 iamdingyu 的帖子
iamdingyu:楼主,谢谢你的代码,我也显示成功了,有个问题请教一下,你的STC8运行频率是多少?我发现主频超过12M之后,就不能正常显示了。 (2018-07-16 09:34) 回 iamdingyu 的帖子

24M 啊,STC8的I2C兼容性不好,我有块OLED可以显示,另外一块不行。
离线iamdingyu
发帖
2
M币
953
专家
0
粉丝
1
只看该作者 11楼 发表于: 07-16
回 netbeetle 的帖子
netbeetle:24M 啊,STC8的I2C兼容性不好,我有块OLED可以显示,另外一块不行。 (2018-07-16 09:50) 回 netbeetle 的帖子

那可能就是OLED屏幕的问题了,我用的是金逸晨的0.96寸OLED,跑24M,不管如何调整I2C的速率,都无法正常显示
在线netbeetle

发帖
598
M币
851
专家
3
粉丝
7
只看该作者 12楼 发表于: 07-16
还真不是,我有中景原的2个版本的I2C的OLED,好像是驱动芯片不一样了,但是不管那个,在STM32、新塘、STM8中都是正常的,STC8嘛,呵呵
离线weitongguo1

发帖
6
M币
-496
专家
0
粉丝
2
只看该作者 13楼 发表于: 10-21
我在用STC8,也想驱动IIC的四脚OLED,怎么也显示不了
离线jjbboox

发帖
764
M币
3959
专家
12
粉丝
41
只看该作者 14楼 发表于: 10-22
回 weitongguo1 的帖子
weitongguo1:我在用STC8,也想驱动IIC的四脚OLED,怎么也显示不了
 (2018-10-21 18:57) 回 weitongguo1 的帖子

是不是上拉电阻的问题?
51对io口的上拉好像总是有点问题,外部加几个上拉电阻试试。
很多I2C设备其他单片机驱动的时候都不需要额外的上拉电阻,stc的貌似没有就不行。
离线invent

发帖
306
M币
826
专家
2
粉丝
8
只看该作者 15楼 发表于: 10-29
正想找个学习一下
离线806856531

发帖
1
M币
-47
专家
0
粉丝
0
只看该作者 16楼 发表于: 10-31
谢谢楼主的分享
离线ywb888

发帖
2323
M币
4326
专家
-1
粉丝
16
只看该作者 17楼 发表于: 12-03
顶一下楼主。我需要下载下来学习一下
离线jjbboox

发帖
764
M币
3959
专家
12
粉丝
41
只看该作者 18楼 发表于: 12-05
回 autopccopy 的帖子
autopccopy:在外,无法读取U盘,无法发程序。请参看STC-ISP 软件吧。
经目测,硬件比C51模拟的均快了5-8倍。
因为STC8的硬件IIC/SPI 不是DMA (Direct Memory Access: 直接存储器访问),还行需要MCU控制,感觉就是将C51模拟的IO时序改为硬件微码的精简汇编级别来执行。(所以没有试验,估计 .. (2018-06-26 22:16) 回 autopccopy 的帖子

虽然不是DMA,但是发送和接收应该是用专门的逻辑单元实现的,所以单字节发送应该是和用户代码并行处理的吧!只是没有DMA,这样不能自动连续发送和接收,可以认为是一个只有1个字节缓存的发送接收单元。