STC89C52单片机

所属系列: 51单片机系列公司:STC公司
位数: 8位

RAM: 512字节
ROM: 8K (Flash)

工作频率: 11.0592MHz(本开发板使用)

芯片电路图电源部分的电容起滤波作用,防止外接的电源电流时大时小,保证流入芯片的是稳定的电流

开发板AD/DA部分从左到右是光敏电阻,热敏电阻,电位器,单片机只能处理数字信号,要么5v要么0v,模拟信号不一定是这两个值,有高有低,所以要经过模数转换才能给单片机处理

74HC595芯片用于扩展单片机的I/O口

EEPROM部分的24C02芯片是用来实现单片机程序中数据掉电不丢失的功能,单片机内部的Flash是实现程序掉电不丢失,而一些数据就要写到24C02芯片中存储,上电再读取

LED灯的排阻作用是:限流

CPU控制I/O口输出高低电平实际是CPU往对应IO口的寄存器写值,寄存器就通过中间的驱动器,增大驱动能力,往IO口输出电平,写1就输出5v,写0就输出0v

//三个函数都在<intrins.h>头文件中
_nop()_ //空语句
_crol_  //循环左移函数,第一个参数是需要左移的地址,第二个参数是左移的位数,最高位移出后会回到最低位,如0x80 -> 0x01
_cror_  //循环右移函数,第一个参数是需要右移的地址,第二个参数是右移的位数//使用
for(i = 0;i < 7;i++)      //连续移动的话要使用循环
{LED = _crol_(LED,1);  //1111 1101 -> 1111 1011 -> 1111 0111 -> 1110 1111Delay(50000);
}

设计精准延时:

用STC-ISP的延时功能,设置延时1000ms,即1秒,在使用时,传入一个参数,将延时函数的主语句放到while循环中,参数则控制循环多少次,就是多少秒

void Delay1000ms(u_int n)        //延时1000ms,即延时1s
{unsigned char i, j, k;while(n)     //自己加上一个循环{_nop_();i = 8;j = 154;k = 122;do{do{while (--k);} while (--j);} while (--i);n--;}
}
//在使用时就可以传入多大参数定时几秒

按键抖动

对于机械开关,当机械触点断开、闭合时,由于机械触点的弹性作用,一个开关在闭合时不会马上稳定地接通,在断开时也不会一下子断开,所以在开关闭合及断开的瞬间会伴随一连串的抖动

该单片机高电平驱动比较弱,低电平驱动比较强

74HC245芯片:

驱动4位一体数码管时,如果单片机直接驱动数码管段选,因为是高电平驱动,能力较弱,所以灯光较暗;通过74HC245芯片,将单片机的高电平当作信号,一点信号也能被芯片接收,然后芯片通过自己接VCC高电平增强驱动信号给数码管,从而驱动数码管发光

74HC138译码器:

p22、p23、p24的二进制组合转为十进制后,就是对应右边Y几,p22口是低地址,p24是高地址,如001,对应Y1

数码管显示问题

数码管显示多个位数字,因为执行过程是不断扫描:

位选 段选 位选 段选 位选 段选

如果不加延时的话,就会造成段选之后紧接着位选,造成数据串位,所以要进行消影操作,就是在每一次的位选、段选之后,将该位所有数据清零,即:

位选 段选(清零) 位选 段选(清零) 位选 段选(清零)

清零前要给个延时,让数码管显示一会

数码管驱动方式

单片机直接扫描:硬件设备简单,但会耗费大量的单片机CPU时间

专用驱动芯片:内部自带显存、扫描电路,单片机只需告诉它显示什么即可,如TM1640

IO口驱动

单片机的IO口是弱上拉,其IO口内部会有VCC加上一个电阻,整体上拉,中间会有个开关,开关下面就是GND接地,开关接到上面VCC就输出高电平1,接到下面GND就输出低电平0,因为是准双向IO口,可以输出,也可以输入,端口处还有个输入信号检测的,如果输出高电平,此时外部接收到低电平,那低电平会拉低信号,最后芯片接收到的也是低电平

高电平驱动能力弱,低电平驱动能力强

寻址

可位寻址:说明该寄存器除了可以整体赋值,也可以按位赋值,如IO口P2 = 0x01,P2_1 = 1;

不可位寻址:说明该寄存器只能整体赋值

keil中寄存器不能直接用二进制赋值

void main()
{P3 = 00001111;    //这里赋的值是八进制的,并不是二进制,也不是整型,所以结果是八进制的二进制,一般使用十六进制
}

单片机及开发板介绍(学习笔记)相关推荐

  1. 51单片机入门-开发板介绍及软件安装

    [1-1] 课程简介_哔哩哔哩_bilibili[1-2] 开发工具介绍及软件安装_哔哩哔哩_bilibili[1-3] 单片机及开发板介绍_哔哩哔哩_bilibili 书籍:51单片机C语言教程-郭 ...

  2. ESP8266串口wifi模块 NodeMcu Lua WIFI V3 物联网 开发板 CH-340 学习笔记(一)

    1.下载安装驱动,地址: http://www.wch.cn/download/CH341SER_EXE.html . 中下载 CH341SER.EXE 2.点击安装完成: 3.通过usb连接线连接C ...

  3. 关于CC2541蓝牙开发板的学习笔记-1

    下一步,我们讨论一下什么叫做协议栈? BLE协议栈,实在TI的开发包里面,顾名思义,协议栈就是包含BLE协议代码的,实际上就是TI释放出来的软件库代码与demo成语以及部分文档的集合,这里面包含的协议 ...

  4. 嵌入式linux-arm(gec6818开发板)回忆学习笔记

    19-20Y 嵌入式系统及应用课程 嵌入式的一花一木 三源码项 一.课程学习结果 安装VMware虚拟机,配置Ubuntu系统镜像(安装VMware-Tools工具,文件可直接拉入虚拟机,反之也可.还 ...

  5. [光速QA][linux学习篇]基于韦东山I.MX6ULL pro开发板的学习笔记

    #前言: CSDN上已经有了太多的教程,我决定使用一种很新的方式记录自己的学习过程,如果对你有帮助就点个赞吧!一篇博文但是会长期更新(争取). 光速QA,希望面试官和面试者都可以给我这里找到灵感,如果 ...

  6. RISC-V开发与应用学习系列——Tang Nano 9K FPGA开发板介绍

    Tang Nano 9K FPGA开发板介绍 简介 开发板资源.IDE及实例演示 简介 Tang Nano 9K 是基于高云半导体 GW1NR-9 FPGA芯片设计的精简型开发板.它搭载的HDMI连接 ...

  7. 杂学——硬件:MIPI,压/速/频信号、并行转串行,SDI,PPM,单片机及开发板,交流直流,电容电阻,总线,RS485

    MIPI(移动产业处理器接口): MIPI DSI协议介绍 摄像头的MIPI接口.DVP接口和CSI接口(百度知道) MIPI接口资料汇总(精) 串行接口.并行接口.低压差分信号.差分布线: Alti ...

  8. 对国产板子有阴影这些软硬件开源的ARM开发板可以学习Linux驱动

    对国产板子有阴影?这些软硬件开源的ARM开发板可以学习Linux驱动开发 为了点亮一块MIPI屏幕,我们除了要了解MIPI DSI的工作原理之外,大前提要了解整个MIPI DSI图显系统的组成,更需要 ...

  9. 国产超低功耗华大单片机HC32L136开发板上手入门

    今天介绍下国产超低功耗华大单片机HC32L136开发板上手后的入门操作(开发板可以在华大MCU应用交流群:164973950 免费申请).HC32L136开发板(如下图所示)分为板载调试模块(左半部分 ...

  10. 国产超低功耗华大单片机HC32F003开发板上手入门

    今天介绍下国产超低功耗华大单片机HC32F003开发板上手后的入门操作(开发板可以在华大MCU应用交流群:164973950 免费申请).HC32F003开发板(如下图所示)分为板载调试模块(左半部分 ...

最新文章

  1. Reddit引入Envoy支持架构改造,性能显著提升
  2. AtCoder AGC033F Adding Edges (图论)
  3. ge linux安装apt_linux – 一个通用的bash脚本,用于安装apt-ge...
  4. python有趣的代码-分享几款由quot;Python”语言编写的quot;有趣、恶搞、好玩”的程序代码...
  5. Pyside2 背景图片填充
  6. Windows沙拉:开机时自动打开NumLock键背后的故事
  7. 2017 CCPC 秦皇岛 G题
  8. QT总结10-绘制箭头
  9. HDU 4489(DP)
  10. win10计算机丢失msvcr,Win10系统msvcp140.dll丢失怎样修复?
  11. vs添加监视快捷键_询问操作方法:监视Android移动设备使用情况,Windows键盘快捷键和修复损坏的照片...
  12. 【笔记】SQL查询语句的基本使用方法
  13. iOS KVC和KVO
  14. 怎么在word里标上标和下标?
  15. Bootstrap—实现圆角、圆形头像和响应式图片
  16. 怎么进行固定资产盘点,资产盘点报告如何一键生成
  17. matlab最炫名族风,matlab版 “最炫民族风” --- 跟风之作(附音频效果)(转)
  18. 山东大学软件学院项目实训第三周
  19. java速度出现obd_将多个OBD命令一起发送并同时获得响应
  20. 微信公众号二次开发关键字回复图文

热门文章

  1. 如何查看电脑CPU温度,笔记本温度显示怎么开启
  2. Excel通过图片名插入图片
  3. matlab 判断矩形相交,如何在matlab中获取线矩形交叉段
  4. 2018款macbook pro如何安装windows双系统
  5. Android蓝牙自动配对和Pin码设置
  6. 微分几何学类毕业论文文献都有哪些?
  7. Docker 使用手册
  8. 卸载ps显示无法连接adobe服务器,Solved: photoshop无法卸载 - Adobe Support Community - 7692384...
  9. 母函数与指数型母函数模板
  10. 数字图像处理与Python实现-图像降噪-指数型低通滤波