前言
FR306x-C 系列芯片是低功耗,高安全性的高性能无线 MCU,内置了蓝牙 BR/EDR/BLE 的收发器和控制器,以及 CAN FD 总线控制器,非常适合应用在工业和汽车电子等广泛领域。
官网查阅资料:
资料下载:https://www.freqchip.com/sjds
开发板:富芮坤FR3068x-C开发板拆箱外观:
上手体验第一步,准备相关软件工具,一定要使用官方推荐的MDK5.36以上版本,之前用MDK5.33版本试过,程序在初始化时钟的时候会跑飞。(MDK程序下载算法添加:复制fr30xxc_sdk__202411\components\tools\keil下的flm文件到X:\Keil_v5\ARM\Flash),安装Python相关环境,MDK编译中有用。然后打开SDK中\examples\peripheral_demo\gpio\MDK-ARM中Project.uvprojx,点击MDK中查看开发板自带DAPLink是否能检测到,然后修改Flash起始地址0x08002000,修改后编译。编译后会生成Project.bin。
__SYSTEM_GPIOB_CLK_ENABLE();
__SYSTEM_GPIOD_CLK_ENABLE();
__SYSTEM_GPIO_CLK_SELECT_COREH();
printf("gpio clock:%d\r\n", system_get_peripheral_clock( PER_CLK_GPIOx));
switch(fe_Demo)
{
case GOIO_OUTPUT:
{
GPIO_Handle.Pin = GPIO_PIN_14|GPIO_PIN_15;
GPIO_Handle.Mode = GPIO_MODE_OUTPUT_PP;
GPIO_Handle.Pull = GPIO_PULLUP;
gpio_init(GPIOD, &GPIO_Handle);
while(1)
{
gpio_write_pin(GPIOD, GPIO_PIN_14|GPIO_PIN_15, GPIO_PIN_SET);
system_delay_us(1000000);
gpio_write_pin(GPIOD, GPIO_PIN_14|GPIO_PIN_15, GPIO_PIN_CLEAR);
system_delay_us(1000000);
}
}
然后点击编译,烧录到开发板上,LED每秒闪烁一次。
定义串口Uart3 DMA:
/* Uart3 IO init */
GPIO_Handle.Pin = GPIO_PIN_4|GPIO_PIN_5;
GPIO_Handle.Mode = GPIO_MODE_AF_PP;
GPIO_Handle.Pull = GPIO_PULLUP;
GPIO_Handle.Alternate = GPIO_FUNCTION_1;
gpio_init(GPIOB, &GPIO_Handle);
__SYSTEM_UART_CLK_SELECT_COREH();
Uart3_handle.UARTx = UART3;
Uart3_handle.Init.BaudRate = 9600;
Uart3_handle.Init.DataLength = UART_DATA_LENGTH_8BIT;
Uart3_handle.Init.StopBits = UART_STOPBITS_1;
Uart3_handle.Init.Parity = UART_PARITY_NONE;
Uart3_handle.Init.FIFO_Mode = UART_FIFO_ENABLE;
uart_init(&Uart3_handle);
printf("SystemCoreClock:%d\r\n", system_get_CoreClock());
printf("SystemDSPClock:%d\r\n", system_get_DSPClock());
printf("System_CORE_HSCLK:%d\r\n", system_get_CORE_HSCLK());
printf("System_SPLLCLK:%d\r\n", system_get_SPLLCLK());
printf("System_AUPLLCLK:%d\r\n", system_get_AUPLLCLK());
uart_demo(UART_TRANSMIT_RECEIVE_DMA);
总结:完成功能测试,