锐单电子商城 , 一站式电子元器件采购平台!
  • 电话:400-990-0325

郭天祥 十天搞定单片机 (1)基础知识和点亮发光二极管

时间:2022-09-07 14:30:01 二极管值80

把手伸向经典郭天祥。这个教程是2018年买的,还没学完。写学习笔记要督促自己努力学习!

  • 什么是单片机?

集成微处理器、存储器集成在集成电路芯片上I/O接口电路构成单芯片微型计算机,即单芯片机。

  • 51 单片机

Intel, MCS-51系列,集成8位CPU,4K ROM,128K RAM,4个8位并口,1个全双工串行口,2个16位定时/计数器。寻址范围64K,布尔处理器具有很强的控制功能。

  • 电平特性

使用单片机TTL电平,高 5V,低 0V ; 计算机串口, RS232电平,高 -12V,低 12V。因此,在计算机和单片机通信时(烧录软件)应添加转换芯片max 232

  • 二进制逻辑操作
    • 与,符号·,&
    • 或,符号 ,|
    • 非,符号:上一横
    • 异或:符号⊕,同为0,不同为1

  • 80C51系列介绍

80C51是MCS-51系列中的经典品种,其他厂商以8051为基础开发的都叫80C51系列。试验板是

STC89C52RC40C-PDIP0721CV4336

STC: 厂商

89:89系列

C:CMOS工艺

52:51,54,55,58,516,5代表程序存储空间的大小*4K=8K

40: 晶振的最高频率是40M Hz

C: commercial, 商业级,还有I,industrial,工业级

DIP:封装格式

P-DIP:双列直插式

0721:07年第21周生产

  • 总线型和非总线型:总线型P0,P1,P2...每组8人
  • 看P三口界面定义
  • 8051的内部结构

  • 总线:内部总线和外部总线分为三种:数据总线DB,地址总线AB,控制总线CB
  • CPU:它由中断系统和一些外部特殊功能寄存器组成
  • RAM:存储可读写数据
  • ROM:存储程序和原始数据
  • C51语言中的基本数据类型
    • 有无符号:有符号的数量,最高位为符号位,1为负,0为正数
    • 浮点型:float,

SEEEEEEE EMMMMMMM MMMMMMMM MMMMMMMM

S 代表符号位,标准E位,表示E后面的数字,M表示前面的数字

  • Double:

SEEEEEEE EEEEMMMM MMMMMMMM MMMMMMMM MMMMMMMM MMMMMMMM MMMMMMMM MMMMMMMM

  • C51数据类型扩展定义
    • Sfr: 特殊功能寄存器声明
    • Sfr16: sfr的16位数据声明
    • Sbit: 特殊功能位声明
    • Bit:位变量声明
    • 例如:sfr SCON=0X98;
    • Sbit OV=PSW^2; //把PSW寄存器的第二位定义为OV,以后想操作这个位置的时候用OV就可以了
  • C51包含头文件
    • 通常有reg51.h, reg52.h, math.h, ctype.h, stdio.h, stdlib.h, absacc.h
    • 常用的有reg51.h, reg52.h 定义特殊功能寄存器和位置寄存器; math.h, 定义了常用的数学运算
    • 使用时写#include (例子)就够了
  • C51的运算符
    • 基本加减乘除大于小于
    • &&逻辑与
    • ||逻辑或
    • !逻辑非
    • >> , << 向右移动,向左移动 (用0补空,循环右移,循环左移)
    • & 按位与
    • | 按位或
    • ^ 按位异或
    • ~按位取反
  • C51的基本语句
    • If
    • While
    • for
    • Switch/ case
  • 中断服务程序
  • I/O口定义
  • 单片机最小系统运行的条件:电源;晶体振动;复位电路(程序从头开始)
  • 每个C语言文件至少有一个main函数, void main() {}
  • 学习目标
    • 对单片机的I/O口进行操作
    • 使用定时器
    • 中断:外部中断,定时器中断;串口中断
    • 串口通信:单片机和计算机之间的串口通信:

  • 电路图绘制软件:altium Designer
  • 参考书:C语言,单片机C语言。

  • Keil软件的使用
    • 先新建一个project
    • 选择使用的芯片, Atmel 89C52
    • 新建一个file
    • 保存,注意保存.c的后缀
    • 选择target1 下,点击source group, 右键,选择 add file to source group
    • 编写程序
      • 位操作方法
#include  sbit D1=P1^0; //定义P1第0位为D1  void main()  {   D1=0;// 低电平,电路导通,照明二极管  }
  • 总线操作方法
#include  void main()  {  P1=0Xfd;  }

想要第二盏灯亮,第二盏灯是0,从7到0依次是111 1101, 写成16进制就是fd

  • 编译

  • 选择生成hex文件,再编译就会生成hex文件,这个就是烧录的软件
  • 这个单片机支持串口下载程序,要用STC_ISP来烧软件
  • 打开软件后,修改使用的芯片,串口号,波特率,打开hex文件
  • 下载程序要“冷启动”,即先下载软件,再上电
  • 看电路原理图
    • 限流电阻的计算
    • 存器的使用:
      • DIOLA可以看到是从89C52连出来的
      • 查看芯片手册有真值表
      • L表示低电平,H表示高电平,X表示任意,Z是高阻态,介于高低电平之间,Q0是上一次的值
      • 之所以用一个锁存器,是为了防止发光二极管闪烁

锐单商城拥有海量元器件数据手册IC替代型号,打造电子元器件IC百科大全!

相关文章