2021年辉芒微单C语言笔记-Robert

上传者: u010746566 | 上传时间: 2024-10-20 02:16:03 | 文件大小: 823KB | 文件类型: DOCX
这篇笔记主要涵盖了基于C语言的微控制器编程,特别是针对辉芒微单的FMD-MCU。下面是笔记中的关键知识点: 1. **包含头文件**:`#include "SYSCFG.h"` 和 `#include "FT60F02X.h"` 是为了引入特定的微控制器库,提供对硬件寄存器的访问。`SYSCFG.h` 可能包含了系统配置的相关定义,而 `FT60F02X.h` 是针对FT60F02X系列芯片的头文件,包含该芯片的IO端口、定时器等寄存器的定义。 2. **引脚定义**:`#define LED1 PA1` 和 `#define LED2 PC2` 分别定义了LED1和LED2的引脚,这里PA1和PC2是微控制器的端口和位。如果编译器找不到这些定义,可以使用`volatile bit`类型直接在代码中创建它们的映射。 3. **变量声明**:`Char i =0; Unsigned char num=0; Int time=0; Unsigned int second=0;` 这些是常见的数据类型的变量声明,用于存储程序运行过程中的各种数值。 4. **标志定义**:`Bit time_flag=0; Bit key_flag=0;` 这是两个位变量,用于标记时间事件(time_flag)和按键事件(key_flag)的发生。 5. **自定义寄存器定义**:如果头文件中没有定义某些寄存器,可以像示例那样手动定义,例如`OPTION`, `EPWMCR0`, `TMR3L`, `TMR3H`, `PR3H`, `PR3L`, `PWM3CR0`, `PWM3CR1`, `T3CKDIV`等。这些都是与定时器、PWM(脉宽调制)和系统选项相关的寄存器。 6. **系统和时钟设定**:`system_init`函数初始化系统时钟,如将OSCON设置为0x61,使系统时钟为8MHz,PCON设置为0x2b,PORTA初始化,以及输入输出方向的设置。 7. **PWM初始化**:`Pwm3_Init`函数初始化PWM(脉宽调制)功能,例如将响应的引脚设置为输入,设置PWM为内部快时钟,设置PWM周期和占空比,以及开启计数器。 8. **定时器设置**:定时器0的中断服务子程序(ISR)展示了如何处理定时器中断。`if(T0IF)`检查定时器0中断标志,然后清零并重新装载计数器值。这个例子中,定时器0每250us中断一次。 9. **中断服务**:中断服务子程序是处理中断事件的代码,如定时器0中断。中断标志T0IF在中断发生后被自动置位,需要在服务子程序中清除,以防止重复中断。 这些知识点都是基于C语言进行微控制器编程的基础,包括头文件的使用、引脚和寄存器的定义、变量声明、标志变量、系统和时钟配置、PWM初始化以及定时器中断的处理。这些内容对于理解和编写FMD-MCU的C语言程序至关重要。

文件下载

评论信息

免责申明

【只为小站】的资源来自网友分享,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,【只为小站】 无法对用户传输的作品、信息、内容的权属或合法性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论 【只为小站】 经营者是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。
本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二条之规定,若资源存在侵权或相关问题请联系本站客服人员,zhiweidada#qq.com,请把#换成@,本站将给予最大的支持与配合,做到及时反馈和处理。关于更多版权及免责申明参见 版权及免责申明