1921|10

3416

帖子

0

TA的资源

纯净的硅(高级)

楼主
 

【短时天气预报系统】indoor装置基本外设使用 [复制链接]

 

周末撸一贴

打板等了差不多一周才到,xLC越来越慢了

上个板图

裸板正面

裸板背面

必要的logo得有

胡乱撸的一板,高手轻喷

垂直走线,感觉也挺好

最后的焊接图:

其实除了MCU、天线和一些接插件

都是在xLC做的SMT

看着质量还行吧

把eInk屏装配起来

顺道还手撸了一张图

基本上,indoor装置就长这么个熊样了

外壳啥的,就不想了

还是想想怎么去薅几片涨价十几倍的传感器吧

还好RSL10这块芯片没怎么涨价,目前看来比较良心

 

来看看基础外设的使用

1、GPIO

墨水屏使用到了DIO11-DIO15

刚开始的时候,怎么都撸不通

就连高低电平都出不来

纳闷了好久

又翻了翻硬件参考手册

发现RSL10默认是支持5线JTAG调试接口

DIO13、DIO14、DIO15正好是复用的JTAG端口

 

所以,想使用DIO13、DIO14、DIO15必须要提前有所动作

贴个配置

// This is for DIO14/DIO15
	DIO_JTAG_SW_PAD_CFG->CM3_JTAG_DATA_EN_ALIAS =		CM3_JTAG_DATA_DISABLED_BITBAND;

	//This is for DIO13
	DIO_JTAG_SW_PAD_CFG->CM3_JTAG_TRST_EN_ALIAS =
			CM3_JTAG_TRST_DISABLED_BITBAND;

然后就可以愉快地使用DIO13、DIO14、DIO15为基础IO口了

2、SPI

常用接口,用于驱动eInk

 

/* Initialize spi0 driver structure */
	spi0 = &Driver_SPI0;

	/* Initialize spi0, register callback function */
	spi0->Initialize(SPI0_Master_CallBack);

使用RTE配置

很方便,但是记得在头文件中配置相关的管脚

3、uart和printf

uart基操就不说了

GCC里面使用printf和MDK中不太一样

eclipse需要重定向_write

撸它

int _write(int fd, char *pBuffer, int size) {

	uart->Send(pBuffer, strlen(pBuffer));
	    /* Wait for transfer to finish */
	    while(uart->GetStatus().tx_busy);
	    memset(pBuffer, '\0', size);
	return size;
}

实际使用printf的时候,总是会连续打印上次残留的字符

每次发送完毕把pBuffer用空字符塞一下,解决

效率估计不高

但是还有个问题,这个printf不支持浮点数的打印

不知道咋回事,可能是编译优化造成的吧

真囧,先不管了

4、FLASH操作

计划中,需要保存一个outdoor设备的mac地址

所以需要进行片上flash的操作

直接贴代码

非序列写入

一个很奇怪的问题

红框中的寄存器操作代码需要执行2次

否则写入FLASH会失败

调试看了看,返回的code是FLASH操作FLASH_ERR_WRITE_NOT_ENABLED写入未使能

执行2次就没问题,真奇怪,苟着用吧

5、ADC

很奇怪,CMSISDriver中没有提供ADC的驱动

只好手撸一个

void ADCGo(void) {
	ADCInit();
	/* Enable interrupts */
	NVIC_EnableIRQ(ADC_BATMON_IRQn);
}
void ADCStop(void) {
	Sys_ADC_Set_Config(ADC_DISABLE);
	NVIC_DisableIRQ(ADC_BATMON_IRQn);
}
void ADCInit(void) {
	/* Set the ADC configuration */
	Sys_ADC_Set_Config(ADC_VBAT_DIV2_NORMAL | ADC_NORMAL | ADC_PRESCALE_1280H);

	/* Set the battery monitor interrupt configuration */
	Sys_ADC_Set_BATMONIntConfig(INT_EBL_ADC | ADC_INT_CH0);

	/* Configure ADC_CHANNEL input selection to ADC_NEG_INPUT_DIO0 */
	Sys_ADC_InputSelectConfig(ADC_INT_CH0,
			ADC_POS_INPUT_DIO0 | ADC_NEG_INPUT_GND);
}

参照例程撸过来的,通道0

能用

调试发现配置成15位的ADC,返回值0-16383

用的次数也不多,接着苟

其他GPIO输入检测之类懒得贴了

上个运行动次打次图

发帖的格式

觉得好凌乱

调不好,就这吧

 

 

以上

回见

最新回复

你为啥要打两个颜色的板?薅羊毛的?   详情 回复 发表于 2021-6-9 17:45
点赞 关注
个人签名

So TM what......?

 

 

回复
举报

2万

帖子

71

TA的资源

管理员

沙发
 

感谢楼主分享,期待后续,哈哈

加EE小助手好友,
入技术交流群
EE服务号
精彩活动e手掌握
EE订阅号
热门资讯e网打尽
聚焦汽车电子软硬件开发
认真关注技术本身
个人签名

加油!在电子行业默默贡献自己的力量!:)

 
 
 

回复

1239

帖子

66

TA的资源

纯净的硅(中级)

板凳
 

 

不错

 
 
 

回复

85

帖子

2

TA的资源

一粒金砂(中级)

4
 

兵贵神速啊,点个赞!

 
 
 

回复

282

帖子

2

TA的资源

一粒金砂(高级)

5
 
 
 
 

回复

424

帖子

7

TA的资源

一粒金砂(高级)

6
 

撸姐姐你怎么还有芯片

点评

渣渣乐,有钱真的可以为所欲为  详情 回复 发表于 2021-6-8 18:42
把名字翻成汉语谐音了,芯片可能从赠板上拆下来的  详情 回复 发表于 2021-6-7 20:42
 
 
 

回复

85

帖子

2

TA的资源

一粒金砂(中级)

7
 
lehuijie 发表于 2021-5-30 22:29 撸姐姐你怎么还有芯片

把名字翻成汉语谐音了,芯片可能从赠板上拆下来的

 
 
 

回复

3416

帖子

0

TA的资源

纯净的硅(高级)

8
 
lehuijie 发表于 2021-5-30 22:29 撸姐姐你怎么还有芯片

渣渣乐,有钱真的可以为所欲为

个人签名

So TM what......?

 

 
 

回复

1942

帖子

2

TA的资源

版主

9
 

666,这个效果真不错!

 
 
 

回复

7608

帖子

2

TA的资源

五彩晶圆(高级)

10
 

你为啥要打两个颜色的板?薅羊毛的?

个人签名

默认摸鱼,再摸鱼。2022、9、28

 
 
 

回复

3416

帖子

0

TA的资源

纯净的硅(高级)

11
 
freebsder 发表于 2021-6-9 17:45 你为啥要打两个颜色的板?薅羊毛的?

x立创杂色不收费,下次打个屎色骚一下

个人签名

So TM what......?

 

 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表