网站首页 > 技术教程 正文
学了一段C语言基础,买了ARM(4412)开发板准备学嵌入式,没有任何基础,看了几天裸机教程,头大啊真是从入门到放弃。欲速则不达,还是从基础的学起吧,先搞51单片机从基础学起,然后在stm32,最后学ARM开发板。
花了几百大洋买了嵌入式开发板,不想再买别的板子了,于是发现了新大陆---Proteus,不光能仿真51单片机还能仿真stm32十分强大。
元件库都是英文的,常用的几种元件中英文对照如下。
RES:电阻;CAP:电容;BUTTON:按键开关;CRYSTAL:晶振;DIODE:二极管;LED:发光二极管。
51单片机几个重要元件
MCU表示单片机微处理器,简单来说就是集CPU(运算、控制)、RAM(数据存储-内存)、ROM(程序存储)、输入输出设备(串口、并口等)和中断系统处于同一芯片的器件
单片机最小系统必须包含:
1.电源电路
2.晶体震荡电路
3.复位电路
51单片机特有的编程语句
1.头文件#include<reg51.h>:定义了一些51单片机特殊寄存器等
2.sfr(special function register):特殊功能寄存器声明。
sfr P0 = 0x80;
0x80为寄存器地址,通过地址来访问寄存器(注意这个 P 必须大写)
只有声明了这条语句,编译器才知道P0是什么东西。
3.sbit:特殊功能位声明
sbit led = P0^0//P0口的第0位取了一个更形象的名字叫做led
IO口是特殊功能寄存器,初始化值为高电平。P0口有8位(bit),正好是一个字节Byte
区分字节地址和位地址
P0的字节地址是80H。
SP的字节地址是81H。
----
P0的字节地址是80H,它有8个bit(P0^0 - P0^7), 对应的 位地址是80H~87H。
位地址81H,和SP的字节地址81H,没有冲突。
位 操作和总线操作 点亮led
keil编译c文件,然后生成hex文件加载到proteus中
1.位操作
#include<reg51.h>
sbit led7 = P1^7;
void main()
{
led7=1;
while(1);
}
这样就完成了操作,不影响P1口上其它IO的值
2.总线操作
要求让P1口的最高位置(P1^7)为“1”,其它为0
#include<reg51.h>
void main()
{
P1 = 0x80;//注意:1000 0000 P0口中存储的数据
while(1);
}
内存地址是内存当中存储数据的一个标识,并不是数据本身,通过内存地址可以找到内存当中存储的数据。
猜你喜欢
- 2024-12-19 利用Proteus仿真STM32实现DHT11温湿度检测
- 2024-12-19 还搞不懂 IRF3205场效应管?一定要看这一文,参数+引脚功能,秒懂
- 2024-12-19 序列之5:单灯闪烁 单灯闪烁原理
- 2024-12-19 pcb设计用什么软件?pcb设计常用工具有哪些?
- 2024-12-19 电子工程师的常用仿真软件 电子工程师的常用仿真软件是
- 2024-12-19 任务1 点亮LED灯(Proteus+CubeMX+Keil5)
- 2024-12-19 基于proteus的51单片机开发实例(1)
- 2024-12-19 单片机常用电路3-按键检测、LED驱动电路
- 2024-12-19 使用Proteus模拟仿真后,软件自动闪退的解决办法
- 2024-12-19 DSP芯片可以用Proteus软件仿真吗?
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- sd分区 (65)
- raid5数据恢复 (81)
- 地址转换 (73)
- 手机存储卡根目录 (55)
- tcp端口 (74)
- project server (59)
- 双击ctrl (55)
- 鼠标 单击变双击 (67)
- debugview (59)
- 字符动画 (65)
- flushdns (57)
- ps复制快捷键 (57)
- 清除系统垃圾代码 (58)
- web服务器的架设 (67)
- 16进制转换 (69)
- xclient (55)
- ps源文件 (67)
- filezilla server (59)
- 句柄无效 (56)
- word页眉页脚设置 (59)
- ansys实例 (56)
- 6 1 3固件 (59)
- sqlserver2000挂起 (59)
- vm虚拟主机 (55)
- config (61)
本文暂时没有评论,来添加一个吧(●'◡'●)