C++设备模板怎么声明和定义

技术C++设备模板怎么声明和定义这篇文章主要讲解了“C++设备模板怎么声明和定义”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C++设备模板怎么声明和定义”吧!将片上外设

本文主要讲解“如何声明和定义C设备模板”。本文的解释简单明了,易学易懂。接下来,请跟随边肖的思路一起学习和学习“如何申报和定义C设备模板”!

以下三种技术可用于封装片内外设:

使用类定义外围设备,然后创建对象。

POD类实现

普通班

静态模板(所有成员都是静态的)

这两个模板的共同特点是不需要动态分配内存。区别在于一个是静态访问成员,另一个是对象方法访问,POD类型不能添加自定义数据成员。

一个mcu的所有寄存器声明完毕后,如果是简单的MCU,可以直接使用,例如:PORTA。DDR.v |=0x01或USART0。UPM=0x 00;但是总有一些重复的步骤和相关的代码,我们可以封装起来。例如,异步计数器的配置步骤可以重用。c可以用对象封装这些操作,但遗憾的是,avr编译器不支持对象的生成和删除。定义了类之后就不能用了,因为没有定义delete运算符和其他基本类库。此时,可以定制或引用一些第三方类库来解决这些问题。如果不想引用第三方类库,那么使用静态类模板也是一个不错的选择。如下图所示:

templatetypenameU,volatileU*u,boolbase=false

classUSART{

公众号:

structure serial config {

wordbaud=115200

byte data=USART _ DATABIT _ 8;

bytes top=USART _ STOP _ 1;

byte party=USART _ PARTITION _ DISABLE;

};

_ _ f _ _ void init(ConstSerialconfigConf){ 0

.

}

_ _ f _ _ HwOrdCalubrr(const word baud){ 0

.

}

.//其他操作

私人:

};模板参数传递寄存器用于提高代码效率,base用于重用模板,__f__是一个宏,它将函数成员定义为静态的。基本模板定义后,可以进行扩展或专门化。例如,初始化期间,除了设置USART功能寄存器外,还应设置RX和TX引脚。这时,模板专业化技术可以用来实现这一点:

模板

void u 0:3360 init(ConstSerialconfigConf){ 0

rx : init(INPUT);

tx : init(OUTPUT);

u0 _ base :3360 init((u0 _ base :3360 serialconfig)conf);

}

模板

void u 1: init(ConstSerialconfigConf){ 0

.

}

//其实还可以再简化一下,在模板参数中增加管脚定义。USART0h和USART1的初始化函数可以添加到引脚初始化中,u0_base是重用模板,所以我不用再写usart的基本初始化代码了。使用如下:

usingu0=USARTUSART0_t,USART0

u 0:材料配置c;

sc.baud=115200

sc . data=USART _ DATABIT _ 8;

sc .奇偶校验=USART _奇偶校验_ DISABLE

sc . STOP=USART _ STOP _ 1;

u 0: init(sc);

u 0:3360 start();感谢阅读。这就是“如何声明和定义C设备模板”的内容。学习完这篇文章,相信你对如何声明和定义C设备模板有了更深的理解,具体用法还需要实践验证。在这里,边肖将为您推送更多关于知识点的文章,敬请关注!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/127473.html

(0)

相关推荐

  • 荸荠怎么煮,赤豆煮荸荠的制作方法是怎样的

    技术荸荠怎么煮,赤豆煮荸荠的制作方法是怎样的制作赤豆煮荸荠的原料有:赤豆100克,荸荠100克,料酒10毫升,姜5克,葱10 克,盐3克,鸡精3克,鸡油30毫升荸荠怎么煮。制作方法:(1 )将赤豆去泥沙,洗净;荸荠去皮,

    生活 2021年10月26日
  • 馒头和米饭哪个含糖量高,蒸米饭与煮米饭哪个升糖快

    技术馒头和米饭哪个含糖量高,蒸米饭与煮米饭哪个升糖快大家好,我是奎哥,很高兴能为你解答馒头和米饭哪个含糖量高:蒸米饭与煮米饭哪个升糖快?根据查询资料,也咨询过相关专业人员,还是觉得煮米饭升糖快,因为米饭煮的话,糖分会很快

    生活 2021年10月31日
  • 孙悟空的外貌,西游记中描写孙悟空外貌的句子

    技术孙悟空的外貌,西游记中描写孙悟空外貌的句子尖嘴缩腮孙悟空的外貌,金睛火眼。头上对苔藓,耳中生薜萝。鬓边少发多青草,颔下无须有绿莎。眉间土,鼻凹泥,十分狼狈;指头粗,手掌厚,尘垢余多。还喜得眼睛转动,语言虽利便,身体莫

    生活 2021年10月25日
  • SpringBoot中常用的注解有哪些

    技术SpringBoot中常用的注解有哪些这篇文章主要介绍了SpringBoot中常用的注解有哪些,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一、@Sp

    攻略 2021年12月11日
  • 怎么解决Java表单重复提交问题

    技术怎么解决Java表单重复提交问题这篇文章主要介绍“怎么解决Java表单重复提交问题”,在日常操作中,相信很多人在怎么解决Java表单重复提交问题问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家

    攻略 2021年11月16日
  • 答复的英文,“请尽快回复”用英文该怎样说

    技术答复的英文,“请尽快回复”用英文该怎样说“请尽快回复”的英文答复的英文:Please reply as soon as possible.reply 读法 英 [rɪplaɪ] 美 [rɪplai]
    1、作不及物

    生活 2021年10月19日