解决方案:E2 studio(13)----基于DTC的多通道ADC采集
优采云 发布时间: 2022-12-21 10:14解决方案:E2 studio(13)----基于DTC的多通道ADC采集
概述
文章主要介绍如何使用E2 studio配置瑞萨DTC和采集多通道ADC。
视频教学
如果您听不到声音,请点击跳转观看。
/视频/BV1cW4y1J783/
csdn课程
csdn的课程比较详细。
/课程/细节/36131
硬件准备
硬件准备:这里准备一块芯片型号为R7FA4M2AD3CFP的开发板。
在此处插入图片描述新建筑
在此处插入图像描述项目模板
在此处插入图片描述 保存项目路径
此处插入图片描述芯片配置
本文使用R7FA4M2AD3CFP进行演示。
在此处插入图像描述项目模板选择
在此处插入图片描述 uart 配置
单击 Stacks->New Stack->Driver->Connectivity -> UART Driver on r_sci_uart。
此处插入图片描述串口属性配置
此处插入图片说明回调函数user_uart_callback()
UART_EVENT_TX_COMPLETE 可用于发送后判断。
volatile bool uart_send_complete_flag = false;
void user_uart_callback (uart_callback_args_t * p_args)
{
if(p_args->event == UART_EVENT_TX_COMPLETE)
{
uart_send_complete_flag = true;
}
}
在此处插入图像描述 setup E2 studio stack
在此处插入图片描述 E2 工作室的重定向 printf 设置
在此处插入图片描述 E2 工作室的重定向 printf 设置
C++ Build->Settings->GNU ARM Cross C Linker->Miscellaneous 删除其他链接器标志中的“--specs=rdimon.specs”
在此处插入图像描述 printf 输出重定向到串口
最常用的打印方式是printf,所以要解决的问题是将printf的输出重定向到串口,然后通过串口发送数据。
注意一定要加上头文件#include
#ifdef __GNUC__ //串口重定向
#define PUTCHAR_PROTOTYPE int __io_putchar(int ch)
#else
#define PUTCHAR_PROTOTYPE int fputc(int ch, FILE *f)
<p>
#endif
PUTCHAR_PROTOTYPE
{
err = R_SCI_UART_Write(&g_uart9_ctrl, (uint8_t *)&ch, 1);
if(FSP_SUCCESS != err) __BKPT();
while(uart_send_complete_flag == false){}
uart_send_complete_flag = false;
return ch;
}
int _write(int fd,char *pBuffer,int size)
{
for(int i=0;ip_src = (void*)&R_ADC0->ADDR[0];
// Destination is results buffer
g_transfer0_cfg.p_info->p_dest = &adc_result_buffer[0];
/* Open the transfer instance with initial configuration. */
err = R_DTC_Open(&g_transfer0_ctrl, &g_transfer0_cfg);
/* Handle any errors. This function should be defined by the user. */
assert(FSP_SUCCESS == err);
</p>
R_DTC_Enable()函数原型
在此处插入图像描述
在此激活源上启用 DTC 传输。
/* Enable the DTC to handle incoming transfer requests. */
err = R_DTC_Enable(&g_transfer0_ctrl);
assert(FSP_SUCCESS == err);
R_DTC_Reset()函数原型
在此处插入图像描述
重置传输源、目标和传输次数。
/* Callback function */
void adc_callback(adc_callback_args_t *p_args)
{
/* TODO: add your own code here */
if( p_args->event == ADC_EVENT_SCAN_COMPLETE )
{
err = R_DTC_Reset( &g_transfer0_ctrl,
(void*)&R_ADC0->ADDR[0], // reset source address
&adc_result_buffer[0], // reset destination address
1 ); // reset block size
if( FSP_SUCCESS != err )
{
__BKPT(1);
}
}
}
打印数据
while(1)
{
/* In software trigger mode, start a scan by calling R_ADC_ScanStart(). In other modes, enable external
* triggers by calling R_ADC_ScanStart(). */
err = R_ADC_ScanStart(&g_adc0_ctrl);
assert(FSP_SUCCESS == err);
printf("adc[0]_v=%f\n",(float)adc_result_buffer[0]/4095*3.3);
printf("adc[1]_v=%f\n",(float)adc_result_buffer[1]/4095*3.3);
printf("adc[2]_v=%f\n",(float)adc_result_buffer[3]/4095*3.3);
R_BSP_SoftwareDelay(1000, BSP_DELAY_UNITS_MILLISECONDS); // NOLINT100->160
}
通过 DTC 传输例程进行多通道 ADC采集
现在设置 3 个 ADC 通道的输入电压,如下所示。
ADC通道引脚输入电压
AN0
P000
地线(0V)
AN1
P001
电源电压(3.3V)
AN3
P003
1.5V
结果展示
通过串口打印出来的数据如下。
解决方案:seo排名工具快速改进,百度在网站收集平台上的收集技巧
现在百度几乎每天都在更新,防止别人用软件刷排名刷流量,但是很多软件还是继续模拟用户点击网站。 最好了解百度的点击算法,研究用户群体,引导用户访问网站。 今天,我们就来说说百度是如何对前20个关键词和长尾词进行排名的。
你要*敏*感*词*起诉多少钱? 索引 9 每天命中约 5IP。
郑州律所指数41每天约有15个IP点击量。
郑州司法局的指数86是每天20个IP点击量。
郑州16离婚*敏*感*词*指数56,日点击量10IP左右。
每日点击量属于稳定排名,需要提升排名的点击量不包括百度每日更新排名。
1.点击算法更新
今年的点击算法不断更新,起到打击非法互惠点击的作用。 凭借搜索引擎的智能,在评价期间随便点一下就会受到欢迎。 关键词索引超过100个,点击的IP地址不一样。 排名周期和每日固定流量必须保持稳定,才能保持固定排名。 如果是通过软件刷卡,人工整合,即使很快出现在首页,过一段时间也会脱落。 最安全的方法是不断研究并引导用户搜索关键词。
2. 页面流行度和页面停留时间
一个网站的受欢迎程度取决于用户在该网站停留的时间。 用户停留时间越长,跳出率越低。 有些网站的设计是为了让用户在进入网站时能够找到他们想要的东西。 他们在网站上花费的时间是否更少? 百度会聚合所有页面并保持时间。 百度抓到一个网站的时候,也会查一下这个网站的设计是否合理。 对网站的综合因素和用户点击网站的痕迹进行评分汇总。
3.跳出率
一方面,反弹率越低越好。 如果网站设计合理,用户会在第一时间找到自己的需求。 是不是很短。 当然,还有页面的相互跳转因素,这是决定网站好坏的决定性因素。 大多数排名还取决于声音设计。 如果没有人搜索和点击您的网站,这也不理想。
4.要求的重要性
网站提供的内容往往会被一些用户搜索到,而另一些则不会,所以百度会优先考虑你的内容以获得好的排名。 该网站发现首页排名更好。 首先,由于资源稀缺,百度会对一些优质文章进行排名。 搜索特定词的用户访问某个网站但找不到他们要查找的内容时,他们将关闭该网站并离开以进行其他搜索。 当你依次搜索你想要的内容时,百度会将你的搜索记录记录为用户需求搜索行为,搜索引擎会根据搜索情况调整网站排名。
那么,如果想利用百度的点击原理来提高关键词排名,应该注意些什么呢?
如果你想利用点击算法来提高你的网站排名,你需要注意以下方法,
首先,网站需要通过正规的方法进行优化。 如果你有几年的经验,最好不要作弊。 具有高索引的词应该被优化远离具有低索引的词。
二、先优化一些前30的关键词,对前几十个网站的关键词进行分析。
第三,如果点击网站是一种稳定流量的方法,最好维持一周左右。
第四,网站的用户访问时间一定要过长,以免出现跳出率高的现象。
第五,控制每天进入的IP数量。 活跃用户数必须大于非活跃用户数。
第六,最好通过点击网站来引导用户长期停留在网站网站。
第七,优化不能中断。 您必须每天继续将用户引导至您的网站,以不断增加活跃用户。