学习学习

郭天祥十天带你精通51单片机学习笔记

2021.01.30
第一次写blog,希望可以坚持写下去,小白很菜,写这个是为自己更好记忆,大家看到有不对的地方也请多多指正噢。
说说学单片机的初衷,单片机这个名词很早就听过但是一直不明所以,不知道能干啥。直到最近因为打算参加电子设计比赛,才渐渐发现很有必要学一学。
说说自己的基础,上学期刚学了模电数电和电路,虽然不算很厉害,但是基础的电路、各种器件,二极管三极管寄存器储存器的概念还是有的,在知乎上看了一些入门单片机的经验贴,决定从郭天祥的视频看起,目前看了两节课,觉得理解起来还可以,如果有一些数制转换,数电和简单的C语言程序的基础,这个课程入门应该是可以的。

以下是正文

是什么?
单片机,也叫微机,就是把CPU处理器,RAM和ROM内存,AD数模转换器,和IO输入输出端口都集成到一片上,相当于一个简单的计算机系统

能干啥?
好像用得最多的地方就是控制,不管是作定时器还是实现感应控制,可以说自动化实现中必不可少。

学习学习,从安装keil开始~
keil是Keil Software公司出品的51系列兼容单片机C语言软件开发系统,Keil提供了包括C编译器、宏汇编、链接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(μVision)将这些部分组合在一起(摘自百度)。总之就是一个可以可以写程序到单片机控制其运作的软件

在软件管家公众号上找的破解版,这里不得不吐槽一下。因为提供的破解版是汉化版的,虽然操作起来清晰易懂一些,但是它写程序的时候关键字不高亮,竟然不高亮!这对于我这种对C不大熟悉的人太不友好了。
也试过很多办法,最后才确定是汉化了的锅。这里说一下不高亮的可能原因:
1、文件保存时不是 .C后缀,因为用C51写程序的,所以要保存成对应的格式。
2、可能是高亮了只是没有看出来,可以在编辑>配置>color&font里面修改keyword的格式(比如颜色)
汉化版
在这里插入图片描述
3、重装一下可能就好 了
4、如果你装了三四遍(比如跟我一样),那很有可能就是因为汉化了的原因,在color&font里找不到keyword的设置(好烦)

安装好后需要注册码,公众号也有提供,但是后来发现那个是过期的了,用起来也有一些限制,可以网上找一下注册机,重新获取注册号。

创建工程
打开keil,在工程(program)那里选择新建(new)工程,然后最好建一个单独的文件夹保存这个工程,因为后面的新建各种文件可以放到一起不会乱。创建后会让你选择芯片,可以选择atmel的AT89C52,然后打开,在文件那里新建一个文件,保存为.C格式(重点)
关注一下左边的框
此时文件和工程并没有关系,可以看到源组旁边没有显示加号,就是它里面没有东西不能展开了。右键源组选择添加文件到源组,然后选择刚保存的.C文件添加,这样文件就和工程建立关系了。

okay,接下来可以开始写简单的程序
比如不能绕开的 点灯
点灯其实就是在TX1C单片机学习板(一块带有单片机系统、LED灯、蜂鸣器、数码管、矩阵键盘、晶振等等器件的板)通过下载你编写的程序控制单片机的输出端口的高低电平来控制LED流水灯的亮灭。
比如,点亮第一个灯

#include<reg52.h>
sbit D1=P1^0; //这里的P1^0是单片机P!端口的第一位,通过寄存器最终控制的就是第一个灯的亮灭,当输出为0时灯亮,1时灭。至于是P1端口还是其他的端口可以查看TX1C单片机的原理图
void main()
{
	D1=0;	
}

另一种方法是通过总线控制,总线是什么还不是很懂,从例子看来是直接控制对所有P1端口的高低电平来实现。

#include<reg52.h>
void main()
{
	P1=0xfe; //这里的fe是十六进制,二进制为1111 1110 ,所以就是第一灯接了低电平
}

这里贴一下作业:用两种方法实现以下
点亮第一个发光管
点亮最后一个发光管
点亮1、3、5、7
尝试让第一个发光管上闪烁
尝试设计流水灯程序

第一节课很基础

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值