代码分析
宁静以致墨
慢下来,享受技术,找一个安静的位置
展开
-
"lcd_print" declared implicitly 产生的原因
Warning[Pe223]: function "lcd_print" declared implicitly F:\代码封存\NEW WORK TOOL\floor heat test\TestBoard_3-10\TestBoard\Project\usr\protocol.c 68 产生此这个警告的原因是一个文件里的函数调用另一个文件的函数没有声明。原创 2016-03-11 09:36:49 · 997 阅读 · 0 评论 -
关于flash擦除引起的bug问题小结
u16 irlib_get_free_block(const u8 * libno){ u8 i; vu16 low, up; u16 _libno = le16_to_cpu(*(u16*)libno); u16 test = 0; if (_libno == 0) { irlib.libno0_use_sec = 1-irli原创 2016-03-29 09:01:59 · 4322 阅读 · 1 评论 -
红外接收代码解析
if ((TIM1->IER & TIM1_IER_CC1IE) && (TIM1->SR1 & TIM1_SR1_CC1IF)) { TIM1->SR1 &= (u8) (~TIM1_SR1_CC1IF); TIM1->CCER1 ^= TIM1_CCER1_CC1P; //reverse the capture edge last = c原创 2016-06-08 17:05:11 · 2082 阅读 · 0 评论 -
红外发送代码分析
if ((TIM1->IER & TIM1_IER_CC2IE) && (TIM1->SR1 & TIM1_SR1_CC2IF)) { TIM1->SR1 &= (u8) (~TIM1_SR1_CC2IF); ret = get_nth_width(&_irwave, ir_eng._cur_send_bit, &width);//取得红外波的长度原创 2016-06-08 17:19:33 · 1970 阅读 · 0 评论 -
#pragma once
#pragma once是一个比较常用的C/C++杂注,只要在头文件的最开始加入这条杂注,就能够保证头文件只被编译一次。原创 2018-01-09 14:32:35 · 767 阅读 · 0 评论 -
小型的代码框架解析
架构的运行机制 (首先给大家看个例子,如果这个例子大家能够看得懂,那么后面的框架大家也一样可以看懂。)static int8_t CUSTOM_HID_OutEvent_FS(uint8_t* event_idx){ Flag1 = 1;} while(1){If(1 == flag1 || 1==flag2){ fla...原创 2018-11-06 09:29:35 · 964 阅读 · 0 评论 -
单片机引脚模式的配置
1、KEY_CHK 按键引脚模式的配置 GPIO_InitStructure.GPIO_Pin = KEY_CHK_PIN; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU; GPIO_Init(KEY_CHK_PORT,原创 2016-03-11 09:11:24 · 2178 阅读 · 0 评论 -
传数组和传值的不同之处
u8 chns[] = {0, 1, 2, 3}; u8 data = get_relay_status(1, chns, sizeof(chns));u8 chns = chn; u8 data = get_relay_status(0, &chns, 1);static u8 get_relay_status(int on, u8 chns[]原创 2016-03-10 20:47:10 · 409 阅读 · 0 评论 -
看懂了一个组合状态机的初始化
DATA_SEG struct PLC_MACHINE plc_state;struct PLC_STATE{ u8 cur_state; u8 next_state; u8(*action) (u8 init, void *args);};struct PLC_MACHINE{ u8 init; u8 trycnt; u8 wai原创 2016-03-10 14:34:04 · 1920 阅读 · 0 评论 -
载波通信模块的代码分析
struct PLC_STATE { uint8 cur_state; uint8 next_state; uint8 (*action)(uint8 init, void *args);//这个结构体是怎么用的 };void plc_machine_opt(原创 2015-05-31 17:24:55 · 1741 阅读 · 0 评论 -
4438的代码分析一
cap_pad[i].led_on的运动历程只有两个点来改变他们的状态,是1或者是0。void task_touch_scan(void *args){ change_led_lightness(); //turn off the sillicon turn on the sillicon 这是改变的LED灯吗????木 touch_scan();原创 2015-06-10 09:09:34 · 13795 阅读 · 0 评论 -
silicon_status用这个标志来控制灯的状态
silicon_status的讨论用法与怎么贯穿整个代码的?void change_led_lightness(void){int i; for (i = 0; i 改变4个灯????木{if(cap_pad[i].led_on)//ledx_change_brightness里面有cap_pad[i].led_on的置0,如果为touch_scan里有置1和置0{原创 2015-06-11 09:05:14 · 817 阅读 · 0 评论 -
4438无线网络组网代码解析
device_bind_process是怎么实现绑定的?enum{ NOSTATE, UBIND, //等待接收 握手一次1 WAIT_FOR_TOUCH, // WAIT_FOR_CONFIRM, //点击按键后 回复一次2 BIND_SUCCESS, //等待接收 握手3次};此原创 2015-06-11 11:43:46 · 309074 阅读 · 0 评论 -
GID SID AID HID
GID网关地址AID设备地址HID8位包括AIDSID短地址原创 2015-07-28 15:31:03 · 1037 阅读 · 0 评论 -
写函数的时候要注意字符间的转换
u8 compare_time_n(u8 t1[], u8 t2[], u8 n){ u16 standard_tim,period_tim; u8 a,b; a = t1[n]; b = t1[n-1]; standard_tim = (u16)(60*t1[n] + t1[n-1]); period_tim = (u16)(60*t原创 2016-03-07 14:42:48 · 427 阅读 · 0 评论 -
写STM8flash和写外部flash EN25Q16A-104HIP 的函数小纪
写外部flash EN25Q16A-104HIP 的函数uint8 program_data(uint16 flash_addr, uint8 buffer[], uint8 len){ uint8 i,flagstatus; uint16 address; int8 trycnt=1; //u16 timeout = 0xFFFF; ret原创 2016-03-08 10:55:09 · 1715 阅读 · 0 评论 -
解决flash不能写入单个字节小记
void program_data(u16 flash_addr, u8 buffer[], u8 len){ u8 i,flagstatus = 0x00; // u16 address;// int8_t trycnt=1; // retry_lbl:// if(trycnt-- FLASH->CR1 &= (u8)(~0x原创 2016-03-09 13:47:19 · 4829 阅读 · 0 评论 -
调试工装代码出现 identifier GPIOE is undefined 的解决方案
#define _GPIO#define _GPIOA#define _GPIOB#define _GPIOC//#define _GPIOD#define _GPIOE//#define _GPIOF//#define _GPIOG#define _AFIO在stm32f10x_conf.h中取消如上注释。原创 2016-03-10 09:42:15 · 6092 阅读 · 0 评论 -
串口数据流的分析
数据流的分析先从串口的中断开始/*接收一个字节*/@far @interrupt void UART2RX_Interrupt(void){u8 byte; if(UART2->SR & UART2_FLAG_RXNE) { //byte = UART2->SR; byte = UART2_ReceiveData8()原创 2015-05-26 16:20:50 · 1567 阅读 · 0 评论