![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
嵌入式
文章平均质量分 58
风雨依依
学海无涯苦作舟
展开
-
NRF52833串口和BLE升级bootloader合并(SDK1710,S113协议栈)
打pca10100_s113_ble_debug工程,将生成的key替换到dfu_public_key.c中对应的key位置在nRF_DFU工程目录下加入nrf_dfu_serial.c和nrf_dfu_serial_uart.c两个文件在nRF_Libraries工程目录下加入slip.c文件在nRF_Drivers工程目录下加入nrf_nvic.c nrf_soc.c nrfx_uarte.c nrfx_uart.cnrf_drv_uart.c和nrfx_prs.c六个文件。原创 2024-06-09 16:14:38 · 402 阅读 · 0 评论 -
Bearpi开发板HarmonyOS之WiFi STA联网
wifi_device.h接口简介启用Wifi STA 模式WifiErrorCode EnableWifi(void);禁用Wifi STA 模式WifiErrorCode DisableWifi(void);检查Wifi STA模式是否启用int IsWifiActive(void);扫描热点信息WifiErrorCode Scan(void);获取所有扫描到的热点列表WifiErrorCode GetScanInfoList(WifiScanInfo* resu原创 2022-05-29 19:02:15 · 467 阅读 · 0 评论 -
Bearpi开发板HarmonyOS之 WiFi AP热点
wifi_hotspot.h接口简介启用AP热点模式WifiErrorCode EnableHotspot(void);禁用AP热点模式WifiErrorCode DisableHotspot(void);设置指定的热点配置WifiErrorCode SetHotspotConfig(const HotspotConfig* config);获取指定的热点配置WifiErrorCode GetHotspotConfig(HotspotConfig* result);检查AP热点模式是否启原创 2022-05-29 12:01:33 · 419 阅读 · 0 评论 -
Bearpi开发板HarmonyOS之UART读写
wifiiot_uart.h中包含声明UART接口函数初始化UARTunsigned int UartInit(WifiIotUartIdx id, const WifiIotUartAttribute *param, const WifiIotUartExtraAttr *extraAttr);取消UART初始化unsigned int UartDeinit(WifiIotUartIdx id);从UART读取数据int UartRead(WifiIotUartIdx id, unsigne原创 2022-05-29 07:19:12 · 422 阅读 · 0 评论 -
Bearpi开发板HarmonyOS之ADC采样
wifiiot_adc.h接口简介创建任务1秒读取一次ADC#include <stdio.h>#include <unistd.h>#include "ohos_init.h"#include <string.h>#include "cmsis_os2.h"#include "wifiiot_gpio.h"#include "wifiiot_gpio_ex.h"#include "wifiiot_adc.h"#include "wifiiot_er原创 2022-05-22 23:01:46 · 320 阅读 · 0 评论 -
Bearpi开发板HarmonyOS之PWM输出
wifiiot_pwm.h接口简介初始化PWMunsigned int PwmInit(WifiIotPwmPort port);取消初始化PWMunsigned int PwmDeinit(WifiIotPwmPort port);根据输入参数输出PWMunsigned int PwmStart(WifiIotPwmPort port, unsigned short duty, unsigned short freq);停止PWM输出unsigned int PwmStop(WifiIo原创 2022-05-22 19:05:10 · 942 阅读 · 1 评论 -
Bearpi开发板HarmonyOS之GPIO中断
GPIO 中断API介绍wifiiot_gpio.h中包含声明GPIO中断相关函数设置GPIO引脚中断功能unsigned int GpioRegisterIsrFunc(WifiIotGpioIdx id, WifiIotGpioIntType intType, WifiIotGpioIntPolarity intPolarity,GpioIsrCallbackFunc func, char *arg);取消GPIO引脚中断功能unsigned int GpioUnregisterIsrFu原创 2022-05-22 17:44:06 · 1276 阅读 · 1 评论 -
Bearpi开发板之Visual studio code终端编译
使用Visual studio code打开bearpi工程VMware Workstation 16 Player并登入到bearpi,右键选择打开终端,虚拟机及服务器搭建请参考此链接介绍在终端输入ifconfig,得到服务器地址,等下Visual studio code要使用在Visual studio code的Terminal菜单下点击New Terminal打开终端在Visual studio code终端输入ssh bearpi@192.168.227.128回车,再输入密原创 2022-04-17 11:39:13 · 540 阅读 · 0 评论 -
基于52840 S340协议栈USB flash U盘实现
参考无协议栈例程目录下nRF5_SDK_17.0.2_d674dde\examples\peripheral\usbd_msc的工程移植到S340工程下需要做以下步聚在sdk_config.h中加入以下配置// <h> POWER_ENABLED菜单// <e> NRFX_POWER_ENABLED - nrfx_power - POWER peripheral driver//=============================================原创 2021-10-17 17:25:03 · 1649 阅读 · 1 评论 -
基于GPS经纬度和当地时间计算日落日出时间实现
以NRF52 MCU平台实现,先实现UTC及要本时间等转换函数#ifndef __RTC_MODULE_H__#define __RTC_MODULE_H__#include "time.h"#include "stdbool.h"#include "stdint.h"#include "sdk_config.h"#include "nrf_atomic.h"#pragma anon_unions#ifdef __cplusplusextern "C" {#endif#defi原创 2021-10-17 16:34:58 · 1747 阅读 · 0 评论 -
嵌入式平台QR code二维码生成
二维码生成文件下载链接:https://pan.baidu.com/s/1PTciVTu-K_cOR6QK9OPwkg提取码:se5e将下载好的文件解压并加入工程(以Keil平台为例)生成二维码函数,这里生成64X64像素的二维码#include "QR_Encode.h"#define QRCODE_WIDTH_HEIGHT 64/*** @brieaf 绘制二维码*/void draw_qrcode(uint8_t x1,uint8_t y1,char * cont原创 2021-10-17 16:13:33 · 1078 阅读 · 0 评论 -
NRF52832内嵌温度测量操作
无蓝牙协议栈温度测量引入#include "nrf_temp.h"头文件调用nrf_temp_init()初时化MCU温度单元温度转换并打印结果 NRF_TEMP->TASKS_START = 1; /** Start the temperature measurement. */ /* Busy wait while temperature measurement is not finished, you can skip waiting if you e原创 2021-09-19 12:47:16 · 1830 阅读 · 2 评论 -
NRF52832之原子操作
nrfx_atomic_u32_store和nrfx_atomic_u32_fetch_store函数赋值操作 nrfx_atomic_u32_t test; uint32_t ret; ret = nrfx_atomic_u32_store(&test,4); NRF_LOG_INFO("ret %d test %d",ret,test); ret = nrfx_atomic_u32_store(&test,3); NRF_LOG_INFO("ret %d原创 2021-09-19 12:01:25 · 711 阅读 · 0 评论 -
基于STM32F030R8Tx实现按键扫描
准备工程,此例程在以下链接的例程的基础上添加的按键扫描功能 https://blog.csdn.net/mygod2008ok/article/details/106954917 新建BSP_key.c和BSP_key.h并加入到工程 BSP_key.c的内容如下 /*** @file BSP_key.c* @author jzhou* @version V1.0* @date 11-Nov-2019* @copyright Chileaf LTD* @brie...原创 2020-06-27 10:57:13 · 861 阅读 · 0 评论 -
STM32F030R8Tx使用HAL库实现uart通信
准备工程,此例程在以下链接的工程的基础上添加的uart功能 https://blog.csdn.net/mygod2008ok/article/details/106910607 添加stm32f0xx_hal_uart.c和stm32f0xx_hal_uart_ex.c到工程 在stm32f0xx_hal_conf.h中打开HAL_UART_MODULE_ENABLED宏 新建BSP_uart.c和BSP_uart.h并加入到工程中 BSP_uart.c内..原创 2020-06-25 10:13:51 · 2520 阅读 · 1 评论 -
STM32F030R8Tx使用HAL库实现ADC DMA功能
准备工程,本例程在RTC例程上添加,参考链接如下 https://blog.csdn.net/mygod2008ok/article/details/106751919 将stm32f0xx_hal_adc.c,stm32f0xx_hal_adc_ex.c, stm32f0xx_hal_dma.c三个文件加入到工程中 在stm32f0xx_hal_conf.h中打开HAL_ADC_MODULE_ENABLED和HAL_DMA_MODULE_ENABLED宏 新建BSP_..原创 2020-06-21 20:37:49 · 2672 阅读 · 0 评论 -
keil去除未使用的参数,变量,返回值的警告
去除未使用的变量的警告 例如,以下代码,会报出未使用的变量警告void test_func(void){ int i; int j = 2; i = j+5;}编译敬告如下:那如下去除呢,可以使用void强转这个变量来去除,先定义一个宏,如下#define UNUSED_VARIABLE(X) ((void)(X))将上述函数中的内容修改如下编译...翻译 2020-03-31 22:44:18 · 3902 阅读 · 1 评论 -
C51入门之数码管
如何静态点亮一个数码管 •共阳数码管,阳极共用在一起,接VCC,阴极独立分别接IO控制脚由于是共阳极性,所以数码管是低电平驱动点亮段画•点亮0~9数码对应的段码,做成一个表格存入一个数组中。code unsigned char disp_code[] = {0xC0,0xF9,0xA4,0xB0,0x99, 0x92,0x82,0xF8,0x80,0x90};...原创 2019-11-11 07:22:30 · 1600 阅读 · 0 评论 -
STM32F103VE RTT打印及错误代码打印实现
RTT LOG功能实现 首先要将rtt文件加入工程,如下新建一个sdk_config.h加入工程,并加入以下内容#ifndef SDK_CONFIG_H#define SDK_CONFIG_H #define STM_MODULE_ENABLED(module) \ ((defined(module ## _ENABLED) && (mod...原创 2019-11-05 23:42:44 · 1168 阅读 · 0 评论 -
STM32F103VE IWDG独立看门狗
采用STM32标准库3.5版本实现独立看门狗功能 首先加入文件stm32f10x_idwg.c,在main.c中包含头文件stm32f10x_iwdg.h 定义看门狗时间宏#define CONVERT_TICK(tick) (tick*625/4) #define IWDG_OVER_TIME CONVERT_TICK(20) //3125*6....原创 2019-11-05 22:39:41 · 404 阅读 · 0 评论 -
STM32F103VE GPIO输入输出功能
使用标准库配置GPIO输出功能 使能外设GPIO时钟,函数RCC_APB2PeriphClockCmd使用GPIO_Init函数初时GPIOGPIO_ResetBits 函数GPIO_SetBits函数GPIO_WriteBit函数GPIO_Write函数假如有PC6,PC7,PD6三个IO口输出来驱动LED使它们简单地闪烁,...原创 2019-10-27 18:02:57 · 893 阅读 · 0 评论 -
STM32F103VE USART & UART串口通信
STM32F103VE共有5个串口功能,其中USART1,USART2,USART3为通用同步异步串口通信,UART4,UART5为通用异步串口通信 为了方便地初时化串口,定义一个串口初时化结构体变量,假定一些参数相同,简化结构里的成员个数,如有需要则要在结构体增加相应的参数,结构体定义如下:typedef struct{ uint16_t tx_pin; /*!<...原创 2019-10-27 17:18:34 · 1938 阅读 · 0 评论 -
STM32F103C6 USART1串口功能
基于STM32F103C6工程实现串口USART1功能,USART1串口TX为PA9,RX为PA10,配置一个USART1串口分为以下几步: 初时化IO配置 初时化USART NVIC配置 初时化USART参数 实现中断函数USART1_IRQHandler 实现串口发送函数USART1_Send_Data 主函数调用相关配置函数 Ste...原创 2019-10-20 23:22:35 · 2563 阅读 · 0 评论 -
STM32F103C6 IO中断之protues仿真
配置IO口,PA0配置为下降沿中断,事件线为EXTI0,PB0为推换购 void IO_Config(void){ //配置IO口 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_GPIOB,ENABLE);//IO口时钟使能 GPIO_InitTypeDef GPIO_InitStr...原创 2019-10-19 23:23:27 · 2892 阅读 · 1 评论 -
STM32入门之初识STM32
STM32分类 CPU位数 内核 系列 描述 32 Cortex-M0 STM32-F0 入门级 STM32-L0 低功耗 Cortex-M3 STM32-F1 基础型,主频72MHz STM32-F2 高性能 STM32-L1 低功耗 Cortex-M4 ...原创 2019-10-13 23:42:43 · 290 阅读 · 0 评论 -
C51入门之跑马灯
跑马灯 使用protues仿真图如下 延时函数实现 •使用硬延时空等待来实现达到延时的目的 注意:实现产品软件开发中,不建议使用硬延时,使用硬延时会降低产品的实时性实现方法:1. 写一个函数,带一个形参,延时值由其传入函数2.函数体内由2级for循环组成3.由分号语句实现空等待操作...原创 2019-10-12 23:26:38 · 5943 阅读 · 1 评论