找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

我建议初学者学 51单片机直接使用三总线接法,暂时不要学模拟接口

查看数: 4305 | 评论数: 13 | 收藏 1
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2022-3-5 01:00

正文摘要:

      我学习51单片机很长时间了,C语言学废了。转学汇编,现在能用汇编语言实现一些简单的想法。比较之前学C语言的时候,像1602lcd用模拟端口接法,既要延时 又要写写数据程序 写指令程序。很 ...

回复

ID:468878 发表于 2022-3-16 08:30
我感觉我就没楼主遇到的这些问题,因为我都是抄别人的程序
ID:1007932 发表于 2022-3-15 23:04
只会C,表示单总线确实难搞,主要是延时不准,I2C倒是用的挺顺手。
ID:73992 发表于 2022-3-14 10:40
myemcu 发表于 2022-3-11 10:05
你选择了Intel时序。

你说之前我还不知道有Intel时序,现在我知道了
ID:299519 发表于 2022-3-11 10:05
你选择了Intel时序。
ID:965189 发表于 2022-3-11 09:27
其实学单片机,串口.并口都要学。这是基础。我使用12864一直都是使用串口,为了节省IO口。还没用过并口。
ID:887371 发表于 2022-3-11 08:44
lyonkon 发表于 2022-3-6 08:44
比如用总线法接LCD1602.
要在80H地址显示字符A,
MOV R1,80H    ;80H值传递给R1

新手就不需要知道函数吗?(汇编叫子程序,C叫函数)
不管是总线法,还是接口法,甚至更换MCU,都可以封装成同一个函数lcd1602_write(cmd,dat).
这才是让新手“直接针对数据和算法和目标”的正确方式。
ID:1008454 发表于 2022-3-9 18:40
我只会C呢,和你相反。
ID:192294 发表于 2022-3-8 17:55
呵呵,我觉得LZ还是初学者。。。
ID:343102 发表于 2022-3-6 10:02
LCD1602是常用模块,有现成驱动程序,搬过来嵌入主程序就行。增加硬件不麻烦吗?
ID:73992 发表于 2022-3-6 08:44
比如用总线法接LCD1602.
要在80H地址显示字符A,
MOV R1,80H    ;80H值传递给R1
MOV A,0X41     ;0X41传递给累加器
MOVX @R1,A    ;将0x41传递到片外80H地址
end
用汇编总共用3句话,
用C语言应该更简单      
片外寻址指令   80H   =  "A";
只用一句话。
这样可以让新手直接针对数据和算法和目标, 而不是针对硬件
ID:230500 发表于 2022-3-5 14:00
与C和汇编没有关系; 对于各种周边外设, 首先自己仔细的把时序图理清楚,51 本来就是通过IO口模拟各种时序, 如果时序都搞不懂, 我想你搞汇编一样也搞不明白;

评分

参与人数 1黑币 +20 收起 理由
admin + 20 回帖助人的奖励!

查看全部评分

ID:69115 发表于 2022-3-5 08:54
接口信号时序都是基础的知识,稍加练习,都容易掌握的.

评分

参与人数 1黑币 +20 收起 理由
admin + 20 回帖助人的奖励!

查看全部评分

ID:297903 发表于 2022-3-5 08:24
LCD1602也可以用I2C转接模块驱动,两个I/0就可以了!!

评分

参与人数 1黑币 +20 收起 理由
admin + 20 回帖助人的奖励!

查看全部评分

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表