
单片机
文章平均质量分 55
单片机
654654654654654
12345
展开
-
51单片机(80951系列)引脚功能说明
全双工异步通信通信数据线。全双工:就是两个单片机之间串行数据可以同时双向传输异步通信:就是收发双方使用各自的时钟控制数据收发过程,不需要同步时钟信号串行口通信:将一个字节的8位数据低位在前,高位在后一位一位地串行接收或发送RXD(P3.0):数据接收引脚TXD(P3.1):数据发送引脚来实现SCON:串行口控制寄存器,字节地址(98H),可位寻址PCON:电源控制寄存器(87H),不可位寻址。原创 2023-04-20 14:08:06 · 22179 阅读 · 0 评论 -
51单片机(8051系列)最小系统图--内部时钟
有源晶振通常的用法:一脚悬空,二脚接地,三脚接输出,四脚接电压。有源晶振不需要CPU的内部振荡器,连接方式相对简单(主要是做好电源滤波,通常使用一个电容和电感构成的PI型滤波网络,输出端用一个小阻值的电阻过滤信号即可),不需要复杂的配置电路。相对于无源晶体,有源晶振的缺陷是其信号电平是固定的,需要选择好合适输出电平,灵活性较差,而且价格高。有源晶振记住输出接输入,VCC接电源,GND接地,E/NC悬空即可。添加LED灯的方式直接像之前一样搜索LED即可选择想要的LED灯。修改对应的参数:如晶振。原创 2023-04-17 12:24:39 · 4376 阅读 · 0 评论 -
I2C协议
I2C协议简述原创 2022-09-20 20:50:12 · 862 阅读 · 0 评论 -
开漏输出,推挽输出,开集输出
开漏,开集,推挽原创 2022-09-20 17:08:09 · 1180 阅读 · 0 评论 -
linux根文件系统(二)的镜像制作
制作ext4格式的文件系统镜像原创 2022-09-19 20:37:19 · 598 阅读 · 0 评论 -
时钟专业术语(FCLK,HCLK,,PCLK)
FCLK(CPU),HCLK(AHB),PCLK(APB)原创 2022-09-16 17:56:14 · 6124 阅读 · 0 评论 -
串口中硬件流控和软件流控
串口的流控原创 2022-09-14 18:56:35 · 996 阅读 · 0 评论 -
ARM汇编(软件准备)
map.lds内容如下。原创 2022-08-24 09:35:12 · 452 阅读 · 0 评论 -
uboot模式下通过tftp移植内核遇到的问题
uboot模式下虚拟机ping不通开发板原创 2022-09-14 16:49:17 · 801 阅读 · 0 评论 -
u-boot启动流程
在第一阶段进行的硬件初始化一般包括:关闭WATCHDOG,关中断,设置 CPU的速度和时钟频率RAM初始化等。3)复制Bootloader的第二阶段代码到RAM空间中。2)为加载Bootloader的第二阶段准备RAM空间。3)将内核映像和根文件系映象从Flash望到RAM空间中。(1) Bootloader第一阶段的功能。(2)Bootloader第二阶段的功能。5)跳转到第二阶段代码的C入口点。1)初始化本阶段要使用的硬件设备。4)为内核设置启动参数。2)检测系统内存映射。原创 2021-10-12 10:18:00 · 85 阅读 · 0 评论 -
ADC实验
其中需要用到ADCCON,ADCDAT,ADCMUX。原创 2022-09-11 17:16:49 · 1236 阅读 · 0 评论 -
PWM控制蜂鸣器
即Tpwm=TtimerXPWM中TCNTB0的值;即:PWM的总周期长度=timer的周期长度Xtiemr的周期数量。(2)在初始化的时候需要先手动装载,然后再关闭手动装载,即使能[1]位和不使能第[1]位。红色框中的是相关寄存器,但是TCNTO0是一个观察寄存器,这里可以不管他。而TCMPB0即占空比,即为Xtimer中占高电平的相对周期数量。timer的频率➗PWM中TCNTB0设置的递减值=PWM的频率。现象:蜂鸣器叫然后不叫,不停重复,中间间隔1s。(1)设置自动装载即使能[3]位。原创 2022-09-10 19:37:10 · 5497 阅读 · 2 评论 -
看门狗定时器
【代码】看门狗定时器。原创 2022-09-10 12:58:47 · 3313 阅读 · 0 评论 -
RAM和ROM的区别,MMU的作用
ROM:只读存储,一般装入整机前是事先写好的,整机工作过程中只能读出,不能像随机存储那样快速,那样可以方便地改写,ROM所存数据稳定,ROM主要用来存储系统信息,或者启动BIOS程序,ROM中存放的一般都是非常重要的数据,只能读,一般不能修改,断电也不会消失.RAM:随机存储器,是与cpu直接交换数据的内部存储器,也叫主存储器(内存),它能随时读写,速度很快,通常作为操作系统或其他正在运行中的程序的临时数据存储媒介,当电源关闭时RAM不能保存数据,如果需要保存数据,就必须把它们写入一个长期的存储设备中(如原创 2021-10-14 23:39:45 · 1532 阅读 · 0 评论 -
CPU内部结构及工作原理
ALU:算术逻辑单元,相当于CPU的大脑。由算数单元和逻辑单元组成,算数单元主要负责数学如加,减,乘等;逻辑单元主要负责逻辑运算,如与,或,非等。ALU只是纯粹的运算单元,想要完成一个指令运算的整个流程,还需要控制单元的协助。PC:程序计数单器,系统上电后默认初始化为0,控制单元会根据这个PC寄存器中的地址到对应的内存RAM中取指令,然后PC寄存器中的地址自动加一。控制单元:会根据程序计数器PC中的地址,会不断地从内存RAM中取指令,放到指令寄存器中并且进行译码,将指令中的操作码和操作数分别送到ALU.原创 2021-11-29 17:49:37 · 834 阅读 · 0 评论 -
C++核心编程(二十六)纯虚函数和抽象类
1)只要有一个函数为纯虚函数,这个类就成为抽象类2)抽象类不能实例化,也就是无法创建对象,但是可以创建指针和引用类型3)抽象类的子类必须重写内容,否则无法实例化对象例子:原创 2022-07-05 21:18:53 · 269 阅读 · 0 评论 -
从计算机系统组成到ARM体系架构
异常源描述Reset上电时执行(Supervisor)Undef当流水线中的一个非法指令到达执行状态时执行(Undef)SWI当一个软中断指令被执行完的时候执行(Supervisor)Prefetch当一个地址预取指令,发现地址取不出数据或无法访问而失败,如果它能达到执行状态这个异常才会产生(Abort),一般是B (分支指令转跳)触发,一般是mem map有问题Data如果一个指令试图存取一个非法的内存单元,这时异常产生(Abort)IRQ通常的中断(IRQ)FIQ。...原创 2022-08-24 07:40:50 · 661 阅读 · 0 评论 -
ARM汇编(gun-complier)
textldr r1 , = 0xFFFFFFFC @r1 = 0xFFFFFFFC adds r3 , r1 , # 0x8 @r3 = 0x4 , cpsr寄存器的C位置 1 ldr r3 , = 5 @r3 = 3 adc r4 , r3 , # 3 @r4 = r3 + 3 + (寄存器CPSR的)c , 即r4 = 3 + 5 + 1 . end. text @代码段@msr cpsr , 0xD0 @这句没啥用,之前我以为是模式问题。.........原创 2022-08-27 21:36:03 · 1834 阅读 · 0 评论 -
UART通信
(1)引脚复用控制寄存器;因为一个引脚通常具有多种功能,当我们要使用某个引脚功能的时候使能相应位即可;引脚复用控制寄存器一般名为GPxxCON;(2)UART线路控制寄存器;这个寄存器用来设置串口的通信协议,如模式是正常模式还是红外模式,其中红外模式的描述是检测到为低电平需要检测3/16的脉冲周期,校验位是无校验还是奇偶校验,停止位长度,数据为长度;一般设置为正常模式,无校验,停止位长度1位,数据为长度8位;UART线路控制寄存器一般名为;ULCONn(3)波特分频寄存器;......原创 2022-08-29 20:15:57 · 1847 阅读 · 0 评论 -
按键中断控制实验
步骤操作1确定触发中断的外部设备,然后查看电路图,确定相应引脚2查看芯片手册,找出引脚对应的配置寄存器,将控制方式设置为中断控制方式3查看芯片手册,查看关于GPIO的Register Description,找到找到中断配置寄存器,将外部中断触发方式设置下降沿触发4查看芯片手册,查看关于GPIO的Register Description,找到外部中断屏蔽(掩码)寄存器,将外部中断使能5。原创 2022-09-08 13:39:53 · 4306 阅读 · 0 评论