首页 星云 工具 资源 星选 资讯 热门工具
:

PDF转图片 完全免费 小红书视频下载 无水印 抖音视频下载 无水印 数字星空

萝丽-三代控及接收机源代码

硬件开发 48.93KB 29 需要积分: 1
立即下载

资源介绍:

简单易用
#include //Large编译,否则xdata异常 #include #include //显示需要的图形数据 #define u8 unsigned char #define u16 unsigned int #include /*****************************************************/ //STC12 系列新增寄存器 sfr IPH=0xb7; sfr P4=0xc0; sfr P4SW=0xbb; sfr P1ASF=0x9d; sfr P4M0=0xb4; sfr P3M0=0xb2; sfr P3M1=0xb1; sfr P2M0=0x96; sfr P0M0=0x94; sfr ADC_CONTR=0xbc; sfr ADC_RES=0xbd; sfr ADC_RESL=0xbe; sfr BRT=0x9c; sfr AUXR=0x8e; sfr WAKE_CLKO=0x8f; sfr IAP_DATA=0xc2; sfr IAP_ADDRH=0xc3; sfr IAP_ADDRL=0xc4; sfr IAP_CMD=0xc5; sfr IAP_TRIG=0xc6; sfr IAP_CONTR=0xc7; sfr CCON = 0xD8; //PCA control register sbit CCF0 = CCON^0; //PCA module-0 interrupt flag sbit CCF1 = CCON^1; //PCA module-1 interrupt flag sbit CR = CCON^6; //PCA timer run control bit sfr CMOD = 0xD9; //PCA mode register sfr CL = 0xE9; //PCA base timer LOW sfr CH = 0xF9; //PCA base timer HIGH sfr CCAPM0 = 0xDA; //PCA module-0 mode register sfr CCAP0L = 0xEA; //PCA module-0 capture register LOW sfr CCAP0H = 0xFA; //PCA module-0 capture register HIGH sfr CCAPM1 = 0xDB; //PCA module-1 mode registers sfr CCAP1L = 0xEB; //PCA module-1 capture register LOW sfr CCAP1H = 0xFB; //PCA module-1 capture register HIGH /*************************************************/ //LCD引脚定义 sbit CS=P0^6; sbit RST=P0^7; sbit RS=P4^6; sbit SDA=P4^5; sbit CLK=P4^4; sbit LEDA=P2^5; /**************************************************/ //NRF24L01 引脚定义 sbit CE=P0^0; sbit SCK=P0^1; sbit MDO=P0^2; sbit IRQ=P0^3; sbit MDI=P0^4; sbit CSN=P0^5; /*************************************************/ //I/O定义 sbit buzzer=P3^4; sbit PPM=P3^3; sbit KEY=P4^7; sbit K1=P3^0; sbit K2=P3^1; sbit K3=P3^7; sbit K4=P3^6; sbit K5=P3^2; sbit K6=P3^5; sbit SA=P2^0; sbit SB1=P2^1; sbit SB2=P2^2; sbit SC1=P2^3; sbit SC2=P2^4; sbit SD=P2^6; sbit SE=P2^7; /***********************************************/ //数据、标志位 u8 bdata DATA; sbit D_7=DATA^7; sbit D_6=DATA^6; sbit D_5=DATA^5; sbit D_4=DATA^4; sbit D_3=DATA^3; sbit D_2=DATA^2; sbit D_1=DATA^1; sbit D_0=DATA^0; //ROM存储 #define Model_length 117 //模型数据 长度 宏定义 #define Version 0xAC //系统版本 A13 u8 Model_number=0,Model_current=0,Model_addrH=2; bit Model_change,Model_reset,reset_action; u8 TEMP_DATA[351]; bit ROM_enable; bit Data_system,Data_model; bit save_action; bit calibration_action,calibration_ok; //显示 u8 word[10]; u8 WW[11][6]; bit LCD_big; bit LCD_light=1; bit LCD_reverse; u8 LCD_vop=42; u8 boot_screen=0; bit boot_screen_en=1; //时钟 bit event1,event2,event3; u8 t1=0,t2=0,t3=0; bit flag_20ms; u8 Master_clock,second=0,minute=0,hour=0; u8 clock2,second2=0,minute2=0; u8 clock_set=5,clock_switch=0; bit clock_go; u16 throttle_idle=0; u8 delay_time=0; u8 flash_time=0; //蜂鸣器 bit Message_AlarmClock,Message_LowPower; u8 Message_KeyTone=0,Message_DataReturn_bad=0; u8 beep=0,sound=0; bit Sound_enable=1; //菜单模式 bit PPM_OUT,PPM_IN,RC_TX,IR_TX,RC_check; bit config_change,star=1,RC_check_star; u8 menu=0,menu_1=0,menu_2=0,menu_3=0; u8 line=0,line_1=0,line_2=0,line_3=0; u8 last_line=0; //按键 bit KS,KS_long_press; u8 KS_press_time; bit key1,key2,key3,key4,key5,key6; bit s1,s2,s3,s4,s5,s6; bit s1_long_press,s2_long_press,s3_long_press,s4_long_press,s5_long_press,s6_long_press; u8 s1_press_time,s2_press_time,s3_press_time,s4_press_time,s5_press_time,s6_press_time; bit key_time; bit increase,decrease,up,down,left,right; //ADC u16 data adc[8],adc_buff[8]; u8 t_adc=0; u8 Battery_1s=1,VLD1=35,VLD2=70; u16 battery_voltage; char v_trim1=0,v_trim2=0; bit USB_5V; //硬件配置 //u8 Right_throttle; bit throttle_lock,Throttle_check=1,Auto_lock,Trim_step; u8 tt=0; u8 middle_change_last; u16 value0,value1; u8 IN_mapping[8]; bit recover; bit NRF_config_change,config_change; bit first; u16 CH1_max=600,CH2_max=600,CH3_max=600,CH4_max=600; u16 CH1_min=400,CH2_min=400,CH3_min=400,CH4_min=400; u8 CH1_offset=51,CH2_offset=51,CH3_offset=51,CH4_offset=51; u16 CH_value[4]; u8 ratio_switch=0; bit use_new_ratio; //无线通信 bit cancel,connecting; u8 TX_power=3; bit CD; u8 data RC_TX_state=0; u8 t_check,t_hopping,NRF_error=0; u8 CD_data[16]; u8 NRF_mapping[8]; u16 NRF_buff[8]; u8 timer2=0,timer3=0,receive=0; u8 rx_sum,FUCK_sum=0;//坑爹的xdata,定义成rx不能用,定义成FUCK就能用了 u8 address[5]; u8 hopping[5]; u8 code address_0[5]={'L','O','V','E','!'};//使用LOVE作为对频暗语 u8 tx_buff[11],tx_data[11],rx[11]={0,0,0}; u8 tx_order[11]; u8 TX_protocol=3; u8 Power_V=70,Chip_V=40,TX_min=60,RX_min=60; //接收机设置 u8 receiver_mode[8]; bit Receiver_change; bit NRF_change; char out_control[8]; u16 out_control_data[8]; //PPM u8 T_l,T_h; u8 t_ppm=0,t_PPMout=0; int PPM_DATA[8]={0,0,0,0,0,0,0,0}; int data PPM_buff[8]; u16 data PPMout[8]={500,600,800,200,1000,0,100,300}; u8 PPM_mapping[8]={0,1,2,3,4,5,6,7}; u8 train_switch=0; bit train_output; u8 PPM_updata=0; char PPM_offset=0; //自动控制 u8 auto_switch=0,auto_mode=2; char auto_middle=-100,auto_star=-50,auto_end=50; u8 auto_speed=10; int auto_value=0; u16 auto_max,auto_min; bit auto_h,auto_l=0; //开关 u8 Switch_A,Switch_B,Switch_C,Switch_D,Switch_E; u8 Combination_Switch=0,Com_Swt_IN1=0,Com_Swt_IN2=0; u8 Com_Swt_out[6]={16,29,42,55,68,81}; u8 Com_Swt_mapping=4; u8 Return_alarm_switch=0; //通道运算 int data operation[8]; char CH_middle[8]; bit ratio_mode; u8 CH_ratio[2][8]; u8 New_ratio[2][4]={60,60,60,60,60,60,60,60}; u8 CH_inverted[8]; u8 CH_middle_change=0; u8 mixer_name; bit mixer1,mixer2,mixer3,mixer4; u8 mixer1_same,mixer1_contrary; u8 mixer2_same,mixer2_contrary; u8 mixer3_same,mixer3_contrary; u8 mixer4_same,mixer4_contrary; //曲线运算 u8 curve_buff[51]; u8 index_number=0; bit index_change; char last_index; char CH_index[3]; u8 point_num=3,curve_num=0; u8 turnning_point[5][7]; u16 throttle; /***********************************************************/ //延时函数 void Delay1ms() //@12.000MHz { unsigned char i, j; i = 12; j = 168; do { while (--j); } while (--i); } void delay_ms(u16 i) //延时毫秒 { while(i--) Delay1ms(); } /**********************************************************/ //ROM操作函数、数据读写控制 u8 EEPROM_read(u8 address_H,u16 address_L) //读数据 { IAP_CMD=0x01; if(address_L>255) { IAP_ADDRH=address_H+1; IAP_ADDRL=address_L-255; } else { IAP_ADDRH=address_H; IAP_ADDRL=address_L; } IAP_TRIG=0x5a; IAP_TRIG=0xa5; _nop_(); return IAP_DATA; } void EEPROM_write(u8 address_H,u16 address_L,u8 byte) //写入数据 { IAP_CMD=0x02; IAP_DATA=byte; if(address_L>255) { IAP_ADDRH=address_H+1; IAP_ADDRL=address_L-255; } else { IAP_ADDRH=address_H; IAP_ADDRL=address_L; } IAP_TRIG=0x5a; IAP_TRIG=0xa5; _nop_(); } void EEPROM_clean(u8 address_H) //擦除数据 { IAP_CMD=0x03; IAP_ADDRH=address_H; IAP_ADDRL=0; IAP_TRIG=0x5a; IAP_TRIG=0xa5;_nop_(); } void Data_change(u8 m)//数据改变 { if(m==1)Data_system=1; if(m==2)Data_model=1; event3=1,t3=0;//刷新事件3定时器 } void DATA_read1() //读取系统参数 { u8 i;u16 sum=0,sum_read; IAP_CONTR=0x83; for(i=0;i<74;i++) { sum+=EEPROM_read(0,i); } sum_read=EEPROM_read(0,74);//读校验和 sum_read<<=8; sum_read+=EEPROM_read(0,75); if(EEPROM_read(0,0)!=Version||sum!=sum_read) { first=1; RC_T

资源文件列表:

萝丽三代控及接收机源代码.zip 大约有5个文件
  1. 萝莉三代控及接收机源代码/萝丽三代6通接收机A10.5源码/
  2. 萝莉三代控及接收机源代码/萝丽三代6通接收机A10.5源码/萝丽三代6通接收机A10.5源码.c 26.11KB
  3. 萝莉三代控及接收机源代码/萝丽三代遥控器A12版(源码)/
  4. 萝莉三代控及接收机源代码/萝丽三代遥控器A12版(源码)/LOLI_3.h 66.77KB
  5. 萝莉三代控及接收机源代码/萝丽三代遥控器A12版(源码)/萝丽三代遥控器A12版(源码).c 149.96KB
0评论
提交 加载更多评论
其他资源 apex-master.zip
apex-master.zip
gpt-neox-main.zip
gpt-neox-main.zip
gpt-neox-main.zip
lm-dataformat-master.zip
lm-dataformat-master.zip
ZGKJ统计年鉴Excel版(1991-2023年).zip
在数字化时代的浪潮中,数据的重要性日益凸显。对于研究人员、政策制定者以及市场分析师而言,准确、全面的数据是他们分析和决策的基础。《中国科技统计年鉴Excel版(1991-2023年)》正是这样一个宝贵的数据资源,它为了解中国科技进步的脉络提供了一扇窗口。 首先,让我们来了解一下《中国科技统计年鉴》的背景。《中国科技统计年鉴》是由中国国家统计局和科技部联合编纂的年度出版物,自1991年起每年发布一次,至今已有30多年的历史。该年鉴详细记录了中国科技活动的各个方面,包括研发经费投入、科技人才队伍、科研成果产出、技术市场交易等关键指标。 随着信息技术的发展,数据的电子化、表格化成为趋势。《中国科技统计年鉴Excel版》应运而生,它将纸质版的年鉴内容转化为电子表格形式,极大地提高了数据的可访问性和可操作性。用户可以通过Excel软件轻松地检索、筛选、排序和分析数据,这无疑为研究人员提供了极大的便利。
Android Launcher应用开发
Android Launcher应用开发Android Launcher应用开发
content_1723521037584.zip
content_1723521037584.zip
中文简体繁体转换工具,支持txt,小说格式
普通转换 可以直接将字幕文件拖拽到软件中,自动读取字幕文件内容,点击“转为简体”或“转为繁体”完成转换,点击“保存”按钮可以输出保存。 批量转换 可以直接将含有字幕的文件夹拖拽到软件中,选择转换的格式,填写输出的文件名样式,点击“开始转换”即可完成转换。 批量转换使用多线程技术,转换过程UI不卡顿,其他功能可正常同步使用,方便并快捷。 需要注意当目标“文件名”与源文件或已存在文件同名时会覆盖掉已有文件,请注意备份源字幕文件。 批量转换将自动获取该目录下的全部字幕文件(包括ASS、SSA、SRT、LRC、TXT),其他格式文件不会读取。 输入编码说明 此功能针对BIG5或GBK等编码的文件输出乱码的问题,通过修改对应的输入文件编码,解决乱码的问题。 默认建议使用UTF-8,适用大多数的输入文件。 输出编码说明 无特殊要求不要修改此选项,选择错误将导致输出文件乱码。 默认建议使用UTF-8,适用大多数视频播放器。 文件名样式说明 批量转换使用的是文件名样式替换掉替换符,替换符使用{}包裹,已有替换符如下: {name} 源文件名 如果觉得可以的话可以给个赞吗,拜托拜托
STMS003F3的TIM1和TIM2定时器,ADC采样与普通IO输入输出配置(新手必看,保姆级)
STMS003F3的TIM1和TIM2定时器,ADC采样与普通IO输入输出配置(新手必看,保姆级)
STMS003F3的TIM1和TIM2定时器,ADC采样与普通IO输入输出配置(新手必看,保姆级) STMS003F3的TIM1和TIM2定时器,ADC采样与普通IO输入输出配置(新手必看,保姆级) STMS003F3的TIM1和TIM2定时器,ADC采样与普通IO输入输出配置(新手必看,保姆级)