windsuncloud 发表于 2025-4-22 23:07:33

将89C52 代码转8051U 还需要注意什么

大家好,上篇帖子大家建议将89C52 芯片转换为8051U (或者AI8051U),目前已经换了芯片,但是代码烧录入新的电路系统后无法工作。通过查阅规格书,在89C52 代码中做了如下代换:

1. 代码加入8051U 芯片 的头文件,将8051U 设置工作于8位模式。
2.P0 定义为开漏模式, 外接上拉电阻 驱动LCD,P1,P2,P3,P4口均定义位准双向口,
3. 使用片内RC震荡模式,烧录时输入12Mhz 频率,
4. 请问上述设置是否正确?是否还有别的寄存器需要设置?89C52 代码工作是正常的 但是烧录入8051U 电路后 LCD不能点亮,电路只能检测到有工作电流,按键都无反应。。。。。。
请大家不吝指教,谢谢大家

神农鼎 发表于 2025-4-22 23:16:49

https://www.stcaimcu.com/data/do ... /STC89C52RC-RD+.pdf
看最新数据手册










DebugLab 发表于 2025-4-22 23:25:36

除IO外设程序兼容外还要注意:
AI8051U速度过快,LCD可能反应不过来,用逻辑分析仪或示波器测一下IO是否有信号
P0开漏,外部10K上拉,可能无法高速通信,上升沿不够快
建议直接使用内部4K上拉(接收),不需要外部上拉
只发送可以直接设置为推挽

windsuncloud 发表于 2025-4-22 23:27:02

谢谢,再学习一下

DebugLab 发表于 2025-4-22 23:31:45

点1602、12864、TFT及其他I8080/M6800兼容接口屏幕,建议直接学习、使用AI8051U的LCM_DMA:
https://www.stcaimcu.com/thread-11351-1-1.html
https://www.stcaimcu.com/thread-10402-1-1.html




页: [1]
查看完整版本: 将89C52 代码转8051U 还需要注意什么