- 博客(54)
- 资源 (31)
- 收藏
- 关注
原创 gps nmea 获取时间
static void getGpsTimeFromNmea(char* nmea){ /* * $GPRMC,021851.00,A,2233.51742,N,11356.58152,E,0.010,,260517,,,A*77 * $GPRMC,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,<
2021-05-08 20:41:58 1127
原创 nrf52 供电选择
1.nRF 52820供电GpioOutputVoltageSetup(UICR_REGOUT0_VOUT_3V0);#define UICR_REGOUT0_VOUT_1V8 (0UL) /*!< 1.8 V */#define UICR_REGOUT0_VOUT_2V1 (1UL) /*!< 2.1 V */#define UICR_REGOUT0_VOUT_2V4 (2UL) /*!< 2.4 V */#define UICR_REGOUT0_VOUT_2V7 (3U
2021-05-07 17:27:10 884
原创 linux kernel Android关系
总结:android只是linux的一个文件系统,只是要和linux内核对应起来android需要烧写的文件:“ramdisk-uboot.img”、“system.img”、“u-boot-iTOP-4412.bin”、“zImage”uboot下面是uboot.bin的烧写文件zImage 下面是kernel的Zimage烧写文件system 文件 ramdisk-uboot.img system.img...
2021-04-10 13:30:20 218
原创 c语言 经纬度计算距离
1.Markdown常用的元素有以下几种:startendoperationconditioninputoutputsubroutine2.exampleshowdoc 格式把mermaid换成flow,下面是效果图Created with Raphaël 2.2.0程序开始输入注册的数据注册验证验证成功?响应成功结束响应失败yesno3.可以使用left、right和bottom关键字来调整线条的位置使流程图更加清晰Created with Raphaël 2.2.0程序开始输入
2020-07-28 20:41:56 1848
原创 nrf52840 改变VDD电压
sd_power_dcdc_mode_set(NRF_POWER_DCDC_ENABLE);sd_power_dcdc0_mode_set(NRF_POWER_DCDC_ENABLE);set_vol(UICR_REGOUT0_VOUT_3V3);···void set_vol(uint8_t vol)//UICR_REGOUT0_VOUT_3V3{if (NRF_POWER->MAINREGSTATUS &(POWER_MAINREGSTATUS_MAINREGSTATUS_.
2020-05-21 15:28:47 1292
原创 spi flash驱动
接口://擦除FLASH指定扇区extern void SPI_Erase_Sector(uint32_t addr);//擦除FLASH指定Block32extern void SPI_Erase_Block32(uint32_t addr);//擦除FLASH指定Block64extern void SPI_Erase_Block64(uint32_t addr);//sp...
2020-04-27 11:13:16 857 1
原创 git tag命令
Git给项目打tag命令1.0 查看所有提交记录//查看所有提交记录git log// 查看简写的提交记录git log --oneline2.0 查看本地的所有Taggit tag3.0 创建 提交 tag命令git tag -a v1.0 -m "对Tag的描述信息"git push origin --tags4.0 删除tag命令git tag -d v1...
2020-04-18 15:47:47 160
原创 NRF 主机配对(BLE_GAP_IO_CAPS_KEYBOARD_DISPLAY)
本人的联系方式:qq343138725,可以做相关的嵌入式单子,如有需要可以联系0 任务说明接到一个任务,蓝牙主机连接从机。从机配对方式,从机显示密码,主机输入密码配对。主机需要配置为,能够输入密码配对上从机1.重点when BLE_GAP_EVT_LESC_DHKEY_REQUES then sd_ble_gap_lesc_dhkey_reply(p_dhkey),参数为从机的密码...
2020-04-17 12:00:35 917
原创 nordic蓝牙地址获取
1.nordic蓝牙地址获取 代码官方工程默认都是使用静态随机地址,地址的最高两位必须要是 1 1,原因下面会有解释void ble_get_mac(void){// uint8_t i;// ble_gap_addr_t ble_mac;//#if (NRF_SD_BLE_API_VERSION >= 3)// sd_ble_gap_addr_get(&am...
2019-12-30 16:26:00 1200 1
原创 无源晶体和有源晶体的起振测量
1.无源晶体和有源晶体的起振测量1.1示波器时间设置如果晶体是32m,时间为31ns示波器时间设置: t=1000ms /32mhz=31ns如果晶体是32khz,时间为:31us示波器时间设置: t=1000ms /32khz=31us1.2示波器幅度设置幅度设置到20mv --200mv左右...
2019-12-27 20:16:15 1118
原创 at指令库
1. at指令库1.0添加AT命令方式很简单,参考atengine.c文件下部的代码,比如加入XXX命令就如下DECL_ATCMD(HELLO);DECL_ATCMD(XXX);static ATCmdItem const atCmdLst[] = { REG_ATCMD(HELLO), REG_ATCMD(XXX), {}};DECL_ATCMD(HELLO){ ...
2019-12-26 14:04:27 1847
转载 LMIC使用代码参考
1.0 LMIC使用代码参考/******************************************************************************* * Copyright (c) 2015 Thomas Telkamp and Matthijs Kooijman * * Permission is hereby granted, free of c...
2019-12-24 11:44:11 667
原创 Source Insight中的多行注释
1.0 多行注释 //我们经常要对一整段代码进行注释,很多代码编辑器都提供了这样的功能:用快捷键“Ctrl + /”来实现“//”的多行注释。但是在用source insight的时候,发现竟然没有这样的功能。于是在网上搜了一下,sourceinsight里面的多行注释可以用宏来实现。以下是实现多行注释的宏代码(在别的网站copy过来的,经过测试,还是很好用的):macro MultiLi...
2019-12-18 10:09:19 397
原创 LMIC发数据,外部收不到
1.0问题LMIC发数据,外部收不到2.0解决方法设置IO3控制晶体电源#define DIO3_1_6V 0#define DIO3_1_7V 1#define DIO3_1_8V 2#define DIO3_2_2V 3#define DIO3_2_4V 4#define DIO3_2_7V 5#define DIO3_3_0V 6#defin...
2019-12-13 17:29:32 147
原创 LMIC一直busy解决方法
1.问题点 程序一直hal_pin_busy_waitvoid hal_pin_busy_wait (void) 2.0解决方法修改模块供电方式SetRegulatorMode(REGMODE_DCDC)—.>>SetRegulatorMode(REGMODE_LDO)
2019-12-13 17:27:35 276
原创 rxtime is 解决方法 LMIC WARNING rxtime is
问题程序运行出现下面警告,经常会无法入网WARNING: rxtime is 21 ticks in the past! (ramp-up time 0 ms / 19 ticks) debug_printf("WARNING: rxtime is %d ticks in the past! (ramp-up time %d ms / %d ticks)\r\n", now ...
2019-12-13 16:31:54 252
原创 keil忽略警告
有时候我们需要在Keil中忽略掉某一个具体的warnning,怎么做呢?如下图:只需在Misc Control中添加 “–diag_suppress=” 就可以了, num就是Keil中的警告代码,把警告内容贴到百度搜索一下就可以知道警告代码是多少了,比如今天的工程中就需要忽略warning: #1293-D: 这个警告,只需添加 --diag_suppress=1293...
2019-12-11 10:19:23 1518
原创 lora LMIC 打印函数库
1 使用方法1.1 打开宏开关#define CFG_DEBUG1.2 函数关联打印:void debug_printf (char const *format, …);1.3 调用函数打印:void debug_str (const char* str) {// hal_debug_str(str);LORA_RTT("%s",str);}2. debug.h// Copy...
2019-12-11 10:02:24 227
原创 LoRaWAN入网参数设置
1.0LoRaWAN_APB入网参数设置2.0 OTAA入网OTAA(Over-The-Air Activation),是LoRaWAN的一种空中入网方式。当node在上电的时候处于非入网状态时,需要先入网才能和服务器进行通信。其操作就是node发送join_request message,请求入网,然后服务器同意入网,并且返回Join-accept message,node再对信息进行解...
2019-12-09 16:57:26 1983
原创 nrf52832自动唤醒功能的串口
1.0实现的接口#include <stdbool.h>#include <stdint.h>#include "stdint.h"#include "app_uart.h"#include "simple_uart.h"#include "nrf_uarte.h"#include "app_timer.h"#include "nrf_drv_gpiote....
2019-12-09 15:43:25 1640
原创 软件模拟spi接口 ,四种模式全支持
1.0 .h需要定义的文件#define SET_GPIO(A) NRF_GPIO->OUTSET = (1UL << (A)) #define CLEAR_GPIO(A) NRF_GPIO->OUTCLR = (1UL << (A))#define READ_GPIO(A) NRF_GPIO->IN&(1<<(A))#...
2019-12-09 14:25:42 1295
原创 nrf52810 scan nrf52810扫描
1.之前使用的平台平台:PCA10040E(nRF52810)sdk:nRF5 SDK 14.2协议栈:s112_nrf52810_5.1.02.0 遇到的问题以最小的代价在之前的平台上蓝牙扫描功能3.0 解决方法经过摸索发现可以修改协议栈支持扫描功能,以使用S132 v5.1.0代替s112_nrf52810_5.1.04.0 操作步骤4.1获取协议栈nRF5 SDK 14....
2019-12-07 10:26:08 1042
原创 14 openwrt usb支持
1.配置 make menuconfig6)添加utf8编码,CP437编码 ISO8859-1编码2.配置2 make kernel_menuconfig# 3烧录 挂载格式化mkfs.ext3 /dev/sda
2019-09-19 10:11:30 500 1
原创 13. mt7628 加入启动项
1.在/etc/init.d下面创建脚本vim /etc/init.d/automount#! /bin/shmount /dev/sda /mnt2.创建软链接到/etc/rc.dchmod 777 /etc/init.d/automountln -s /etc/init.d/automount /etc/rc.d/s99automount3.讲解openwrt启动后会执...
2019-09-19 09:45:53 372
原创 12 mt7628 开启串口1+ser2net使用
1配置管脚1.1 vim target/linux/ramips/dts/mt7628an.dtsi ,使能串口.dtsi 配置文件就改完了,但是扩展串口相应引脚被设置为了 GPIO 模式,怎么样才能变为串口模式了呢?需要修改 .dts 这个配置文件, 同样位于target/linux/ramips/dts 目录下。把 GPIO 模式去掉,把设置 GPIO 的设置项中 uartf去掉vi...
2019-09-18 16:31:47 1622 1
原创 11 openwrt mt7628 oled驱动
1.遇到的第一个问题,编译固件过大1.1 配置i2c驱动make menuconfigKernel modules —> I2C support —> <*> kmod-i2c-gpio-custom.## 1.2编译后固件过大Openwrt修改flash大小前言:在我们编辑固件选择软件包的时候会使固件逐渐变大,但是要符合你使用的型号,所以就修改固件大...
2019-09-16 17:32:03 1745
原创 10.openwrt调用sysupgrate失败
1.错误的产生root@OpenWrtdl:/tmp# sysupgrade -n -v /tmp/openwrt-ramips-mt7620-mt7620a-squashfs-sysupgrade.bin Sysupgrade is not yet supported on generic.Image check 'platform_check_image' failed.root@Op...
2019-09-12 18:51:38 1378
原创 9.openwrt 应用程序编写原型
1.文件结构和在源码中的位置应用程序一般位于 package/utils目录下面,文件结构如下:test@test-Inspiron-3670:~/work/openwrt1505_mt7628/package/utils$ tree mydrv_app/mydrv_app/├── Makefile└── src ├── Makefile └── mydrv_app.cc...
2019-09-12 16:26:58 378
原创 8.openwrt char字符设备驱动原型
1.文件结构和在源码中的位置字符设备的驱动一般位于 package/kernel 目录下面,文件结构如下:test@test-Inspiron-3670:~/work/openwrt1505_mt7628/package/kernel$ tree mydrv/mydrv/├── Makefile└── src ├── Makefile └── mydrv.c2.文件介...
2019-09-12 11:49:34 275
原创 6.openwrt改变打印串口波特率,添加ssh client,修改wwan口配置为自动获取ip
1.改变波特率uboot的波特率是115200,openwrt起来打印串口的波特率是57600,需要统一根据网上搜索,需要修改dst文件vim target/linux/ramips/dts/mt7628an.dtsi改为下面:2.添加ssh服务make menuconfignetwork—.ssh—>openssh-sftp-client选中即可3.遗留问题从哪里找...
2019-09-10 11:47:03 739
原创 5.openwrt编译上传相关
1.上传需要删除rm -rf bin/ramips/* && rm .config* && rm -rf build_dir/target-mipsel_24kec+dsp_uClibc-0.9.33.2/* && rm -rf staging_dir/target-mipsel_24kec+dsp_uClibc-0.9.33.2/*2…git...
2019-09-09 17:02:07 235
原创 4.openwrt helloworld 应用程序,ipk,gpio驱动ipk,gpio应用ipk
1.mips编译hellowold到开发板中运行1.1 vi hello_world.c 输入如下:#include <stdio.h>int main(char argc, char *argv[]){int i = 1;while(1){//1~10 循环printf("Hello world!!!%d\n",i); //打印内容if (i < 10){...
2019-09-07 15:42:11 742
原创 3.openwrt mt7628 开发资料收集
1.0搜集资料1.不死boot链接https://github.com/pepe2k/u-boot_mod2.openwrt源码编译方法:配置:sudo apt-get install subversion build-essential libncurses5-dev zlib1g-dev gawk git ccache gettext libssl-devxsltprocbuntu...
2019-09-07 15:20:50 1877
ws2812_led_esp32_ok.rar
2020-03-17
SeggerEval_WIN32_MSVC_MinGW_GUI_V550.rar
2020-01-09
s132_nrf52_5.1.0_softdevice.hex
2019-12-07
mt7628_oled.zip
2019-09-17
nordic mesh 3.0版本 nRF5 SDK for Mesh
2018-12-03
nrf52 gcc-arm-none-eabi2017-q2 Linux和win32
2018-05-30
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人