打印
[PIC®/AVR®/dsPIC®产品]

ATMEGA4809的UART在MCC下的使用方法

[复制链接]
1396|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 gaoyang9992006 于 2025-1-31 11:52 编辑

#申请原创#@21小跑堂
启动MCC,根据开发板使用的UART引脚为UART3,PB0和PB1



确定了使用引脚就可以启动MCC配置了

Generate生成代码,因为勾选 了重定向printf到该串口,因此可以直接使用printf了
#include "mcc_generated_files/system/system.h"
#include"mcc_generated_files/timer/delay.h"
/*
    Main application
*/
unsigned char i=0;
unsigned char sw_flag=0;

void sw_int_handler(void)
{
    sw_flag++;
}
int main(void)
{
    SYSTEM_Initialize();
    SW_SetInterruptHandler(sw_int_handler);
    printf("%02d Hello:%02d\n",i,sw_flag);
    Enable_global_interrupt();
    while(1)
    {
        i++;
        if(i>=100) i=0;
        DELAY_milliseconds(1000);
        YELLOW_LED_Toggle();
        if(sw_flag>0)
        {
            printf("%02d Hello:%02d\n",i,sw_flag);
            sw_flag=0;
        }         
    }   
}
完善代码,如上所示。编译烧录,LED以2S为周期开始闪烁,按键后将会通过printf打印按下的次数。
MCC生成了其他的UART3相关的库函数,方便自己根据应用修改程序配置

AVR4809_UART.X.rar (64.91 KB)

使用特权

评论回复
沙发
gaoyang9992006|  楼主 | 2025-1-14 16:31 | 只看该作者
本例程中有使用IO中断,因此应该根据需要配置IO的模式,同时在初始化中使能总中断。

使用特权

评论回复
板凳
天灵灵地灵灵| | 2025-1-14 16:51 | 只看该作者
支持中断功能吗

使用特权

评论回复
地板
antusheng| | 2025-1-16 11:39 | 只看该作者
有时候跟定时器一起用会乱码是怎么回事?

使用特权

评论回复
5
稳稳の幸福| | 2025-1-19 19:52 | 只看该作者
自带 那个例子怎么用的?

使用特权

评论回复
6
yiy| | 2025-1-26 15:09 | 只看该作者
MCC的所有外设配置教程就靠你了。

使用特权

评论回复
7
598330983| | 2025-1-26 19:11 | 只看该作者
这个还可以开启XCK,比其他厂家的牛啊。

使用特权

评论回复
8
lcczg| | 2025-1-27 09:31 | 只看该作者
方便又强大。
可以把代码上传下,方便大家参考.

使用特权

评论回复
9
gaoyang9992006|  楼主 | 2025-1-31 11:53 | 只看该作者
lcczg 发表于 2025-1-27 09:31
方便又强大。
可以把代码上传下,方便大家参考.

已补充附件

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:如果你觉得我的分享或者答复还可以,请给我点赞,谢谢。

2003

主题

16099

帖子

212

粉丝