历史上的今天

今天是:2024年10月09日(星期三)

正在发生

2021年10月09日 | STM32 易阅读的代码风格

发布者:码字先生 来源: eefocus关键字:STM32 手机看文章 扫描二维码
随时随地手机看文章

命名方式

变量

全局变量(驼峰命名法)

USART_RxCounter、ColorValue、ADC_Value

局部变量(下划线命名法)

usart_rx_counter、color_value、adc_value


函数

所有函数(驼峰命名)

USART_Init();

HardwareInit();

CheckValue();


代码风格

基本语句风格

/*if语句---(外层if语句)*/

if (USART_Falg)

{

/*if语句---(内层if语句)*/

if ('A' == tmp){

tmp--;

sum++;

} else {

tmp++;

sum--;

}

}


/*switch语句*/

switch (Ch)

{

case 1:

Ch++;

break;

case 2:

Ch--;

break;

default:

break;

}


/*for语句*/

for (i = 0; i < 10; i++)

{

for(j = 0; j < 10; j++){

a = b;

b = c;

}

}

/*while语句*/

while(1)

{

do{

i++;

j--;

}while(i < 10);

}


文件格式

/*头文件卫士*/

#ifndef _GLOBAL_H_

#define _GLOBAL_H_


#endif //_GLOBAL_H_


宏调试开关

#define __DEBUG__


#ifdef __DEBUG__

#define dprintf(format,...)  printf("File: "__FILE__", Line: %05d: "format"n", __LINE__, ##__VA_ARGS__)

#else

#define dprintf(format,...)

#endif

关键字:STM32 引用地址:STM32 易阅读的代码风格

上一篇:STM32f103 串口接收不定长数据
下一篇:STM32 F103 时钟树详解

推荐阅读

正当中美之间的贸易摩擦逐步升级时,印度政府正悄悄地开始了大国崛起战略的芯片战略。他们计划在每个邦都建立以个特大经济区,主要服务于印度的电子制造业,也就是芯片制造业。最值得注意的是,该计划希望印度能在2020年实现芯片完全国产化,获得技术自主,这表明了印度已经意识到了芯片自主化对于印度崛起和国家安全的重要性。科技巨头在印度建厂并不新奇...
AI、5G应用推动芯片微缩化,要实现5nm、3nm等先进制程,意味着需要更新颖的技术支援以进行加工制造,半导体设备商遂陆续加快推进新方案。 近期受台积电5、7nm制程的EUV设备与记忆体相关设备需求上升影响,其中EUV设备出货量或提升66%,市场预估ASML第3季营收将会反弹为正成长,且半导体受AI与5G趋势带动下,相关设备商将可望受惠,预计将于2020 年摆脱低...
对于在室外环境工作的移动机器人通常使用惯导/卫星组合导航方式。惯性导航系统具有完全自主、抗干扰强、隐蔽能力好和输出参数全面等优点,但它的鲁棒性极低,误差会不断随时间累积发散。卫星导航系统具有精度高、定位范围广和误差不随时间累积等优点,但其自主性差、易受外界遮挡和干扰、接收机数据更新频率低等缺点。因此工程上常常将两者互补结合使用,...
Time Appliance Project (TAP) 是 Facebook 最新的亚微秒网络时间同步开源系统,它旨在以经济高效的方式跨数据中心提供非常精确的计时和时间同步。数据中心需要服务器、数据库和服务之间的同步时间,以促进广泛的应用,如电子交易、语音和视频以及无线传感器网络。最近,Facebook 发布了 Time Card,这是一种开源 x86 PCIe 接口卡,旨在提供数...

史海拾趣

问答坊 | AI 解惑

搞单片机的需要常备逻辑分析仪吗?

逻辑分析仪就象数字滤波器那样重要吗?买一个要多少钱?…

查看全部问答∨

基于DSP的PCI高速测控系统结构的研究

引言 随着数字信号处理芯片性价比的不断提高,数字信号处理的应用领域飞速发展,同时Pentium高速CPU的出现,要求有极高的数据通量予以支持,而低速的ISA总线在解决这些问题方面逐渐无能为力,取而代之的是高速的PCI总线。PCI总线可将高速外围设 ...…

查看全部问答∨

十年后的操作系统会是什么样?

网上一位仁兄的想法,呵呵 觉得不妨大家一起聊聊 2009快过去了,咱们也展望下未来十年的OS。 我觉得OS有2个含义,一个是普通用户感觉到的,这种情况包括界面等。称为A情况。 还有一个是内核开发人员感觉到的,不包括界面啥的。称为B。 我觉得 ...…

查看全部问答∨

造型像时尚小包的U盘

与“会变胖的U盘”类似,当你将文件或数据拷入时,这些时尚的小包就会开始膨胀,慢慢鼓起来。让你更直观的感受到U盘的剩余存储容量。 …

查看全部问答∨

用MSVC1.52编译loadcepc.mak问题请教

我在XP系统上安装了MSVC1.52和MASM611; 想修改LOADCEPC增加启动画面 在X:\\WINCE500\\PUBLIC\\COMMON\\OAK\\CSP\\X86\\DOS\\LOADCEPC下用MSVC1.52编译loadcepc.mak 其中loadcepc.mak中根据“wince中loadcepc.exe的编译经历”文章中介绍修改了相 ...…

查看全部问答∨

6410/WINCE6.0 EBoot中, 我想在EBoot的main.c中,另建一个函数,在这个函数中操作一些GPIO。遇到了一些情况.

//+++++++++++++++++++++++++++++++++ 原来这样是 OK +++++++++++++++++++++++++++++++++++++++++++ static void InitializeDisplay(void) {     tDevInfo RGBDevInfo;     volatile S3C6410_GPIO_REG *pGPIOReg = (S3C6 ...…

查看全部问答∨

一個年過三十的開發人員的困惑

本人已年過三十,從事軟件開發有十年時間了.期間經歷了各種語言和開發模式的變遷. 歷經艱辛,目前是一家軟件公司的項目負責人. 主要從事的企業管理類軟件的開發. 深感企業類軟件開發的艱辛,客戶變更,各種無理要求,開發人員管理的困難. 近日心灰意 ...…

查看全部问答∨

急!!!请问如何让程序发出一个指定的声音???

比如说我要写一个钢琴程序,因为不能用MIDI,所以只能用WAVEFORM API 我现在写了WAVEOUTOPEN 那之后呢? 也是waveOutPrepareHeader和WAVEWRITE吗? 还是需要用别的API???具体的要怎么写呢? 比如说我要发出DO的声音,具体的实现应该是怎样的啊...谢 ...…

查看全部问答∨

WINCE的EBOOT问题

eboot的时候出现 Failed to initialize Ethernet board! Please check that the Ethernet card is properly installed and configured.这是什么问题啊?…

查看全部问答∨

关于STM32初始化串口时乱发数据

近日在配置STM32的USART1时,发现在初始化后,只要打开发送中断,程序就会立即 进入发送中断,并且会发个随机数据出来.请问,这种情况该如何处理? 我的代码如下: /************************************************* *函数:  cfg_u ...…

查看全部问答∨
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved