单片机学习书推荐?
以下是几本推荐的学习单片机的书籍:
1. 《51单片机C语言程序设计与实践》:这本书详细介绍了51单片机的原理和应用,并提供了大量的实例和案例来帮助读者理解和掌握单片机编程。
2. 《ARM Cortex-M3嵌入式系统设计与应用》:这本书主要介绍了ARM Cortex-M3架构的嵌入式系统设计和应用,包括单片机的硬件结构、汇编语言和C语言编程等内容。
3. 《嵌入式系统设计与开发实战》:这本书系统地介绍了嵌入式系统的设计和开发过程,包括单片机的选择、嵌入式系统的硬件和软件设计等方面,提供了丰富的实例和案例来帮助读者深入理解。
这些书籍都是经典的学习单片机的教材,适合初学者和有一定基础的读者。它们结合理论和实践,通过具体的例子和案例来帮助读者理解和掌握单片机的原理和应用。
为什么自己设计不出来单片机程序?该怎么做?
跳出教材的误导,直接写程序!
第一个程序,端口线拉高,点亮Led。
案例学习法,照视频材料,下载样例程序。
试图修改参数或增删语句,看看效果。
单片机教材的学习顺序坑死人不偿命。
运行一两个程序后,再补什么端口和外围电路。
逐渐了解单片机资源。
初学者,不必知道指令系统,存储结构,接口电路等等。
案例学习法,在样例基础上增删,看得见摸得着,事半功倍。
比如时钟中断,不学中断系统不学定时寄存器也行,把样例程序的定时设置看成子函数调用就好了。
多把心思放在程序结构,计算模型,控制流程,子程序扩展,资源利用。。。
不用把语法和技巧放在心上!!!
传统单片机教材害死人,学一学期不知单片机程序为何物。买个单片机板子,带样例程序的,第一天不出半小时,自学就能编第一个简单程序。
不要以为我自己是这么过来的才鄙视大学单片机教学。。。😄,我就是大学老师!按传统教材学的,又教学生。。。后来发现没必要那样漫长的学习过程。倒过来学,先下载程序运行,后讲什么是程序,再讲软硬件是怎么工作的。
初学者,不知道指令系统又何妨?你又不用汇编写程序。不知道中断系统又何妨?我知道怎么处理外部事件就行了。不知道通信口又何妨?我调用子函数就好了。不熟悉语法又何妨?编译一下就知道哪里错了。
再重复一遍,案例学习法,抛弃传统教材。
你好 ,我来回答一下。
熟悉单片机的原理、结构;学好数电、模电,为设计电路打好基础;熟练使用C语言,多学习他人的程序;对操作系统原理有一定的了解,Protel有一定的基础;培养实际动手调试电路的能力。一般可以通过专业的书籍和课程进行持之以恒的学习,注意理论与实践并重,遇到问题耐心检查并适当投资购买实验器材。
自己买一套实验51单片机。多练习一下。
希望对你有帮助!
学习单片机编程,需要有基础,需要有方法。
一,写不出单片机程序的原因有哪些?
C语言掌握不够,常用的语法不理解.
单片机知识点没有掌握。
单片机编程没有入门。
第一,要一定C语言基础,单片机C语言和普通C语言语法差异
1.调用的头文件不一样。
2.编译器的不同会造成单片机C程序编写过程中细节的差异,比如unsigned int类型,在某些编 译器当中是与unsigend char一样的位宽。
第二,要有一定的硬件知识。理解普通的三极管,高低电平,电压电流等基本概念。这个能看得懂原理图,从事单片机开发,会需要调试程序,需要通过一定的工具,万用表,示波器来分析自己的软件是否正常。
第三。必须要有一块合适的开发板。资料和教程要齐全,没有开发板,就没有练习和实操的机会和平台,更谈不上进步。
单片机分为很多种,8位单片机,16位单片机,32位单片机,从未接触过单片机开发的初学者,在选择开发板时,建议用从8位单片机如AT89S51作为单片机入门芯片。
对于基础知识较薄弱的同学,不建议一开始就学习stm32,因stm32学习难度会大很多,知识点也更多,学不好会打击积极性。
二,能熟练编写单片机程序,有什么方法?
首先,单片机的入门级别的知识点:
1,开发环境的搭建和使用,下载程序的操作。这一块非常重要,这个学不会,后面的单片机编程无从谈起。
2,端口IO输出,实操LED灯的亮灭,流水灯实验。
3,端口IO输入,实操按键的输入高低电平变化,操作LED的亮灭。
4,串口的输入输出,掌握ASCII码的字符与0-255数字的对应关系,并学会利用串口进行调试信息打印,掌握利用串口调试代码的方法。(这种调试方法很重要,很多单片机不能在线仿真,只能用串口调试)
5,掌握定时器功能。掌握普通定时器中断函数的写法和用法,如果对应的单片机包含PWM设置,也必须掌握PWM的配置和使用。
6,掌握IIC时序操作,很多常用芯片都用IIC通信,比如EEPORM存储芯片,掌握后读写相关参数.存储的数据断电不丢失。
7,一般开发板都会有实时时钟芯片如DS1302,掌握其用法,可以在综合练习中用到。
一定要熟练掌握以上知识点,初学者心中要形成自己单片机开发的知识树。
接下来说下
第一,多学习和多看教学资料和视频,目前51级别的开发板非常多,价格实惠,而且有很多优质的教学视频。可以作为入门教程。
第二,推荐郭天祥的入门书籍《手把手教你学单片机C语言》,以及他的教学视频《十天学会单片机编程》,我就是看了这本书和视频,然后不断练习,才踏入单片机编程领域的。
第二,多练习,想需要单片机,看得懂不一定写得出来,一定要跟着视频书籍和老师的要求,自己一点点的编写出来,并每个知识点做好记录。并思考总结,消耗吸收变成自己的知识。
综合实验
根据自己所学习的知识点,完成一个带定时闹钟功能的实时时钟,
1 通过按键设置闹钟,需要将闹钟时间存储在EEPORM中。
2,通过按键修改时间,对ds1302的操作,时间计数的累加,
3,通过切换闹钟-时间显示模式,比如长按,短按键的搭配等
4,数码管在不同的模式下分别显示时间和闹钟。
按照我文中的要求来进行操作和学习,最后完成实时时钟的这个实验,那么您的单片机编程能力一定得到很大提升!