十五周任务3

#include <iostream>
using namespace std;
int main( )
{
 int a=54;
 cout.setf(ios::showbase);//设置输出时的基数符号
 cout<<"dec:"<<a<<endl;  //默认输出a的值是十进制
 cout.unsetf(ios::dec);   //终止十进制格式的设置
 cout.setf(ios::hex);   //设置输出格式为十六进制 
 cout<<"hex:"<<a<<endl;  //以十六进制输出a
 cout.unsetf(ios::hex);  //终止十六进制格式的设置
 cout.setf(ios::oct);   //设置输出格式为八进制
 cout<<"oct:"<<a<<endl; //以八进制输出a
 cout.unsetf(ios::oct);//终止八进制格式的设置
 char *pt="Jerryson";   
 cout.width(10);    //指定宽度为十
 cout<<pt<<endl;    //输出pt
 cout.width(10);  //指定宽度为十
 cout.fill('*');   //指定空白用‘*’填充
 cout<<pt<<endl;     //输出pt
 double pi=22.0/7.0;   
 cout.setf(ios::scientific);  //设置输出格式为科学计数法
 cout<<"pi=";    //输出字符串"i=”
 cout.width(14);    //指定宽度为十四
 cout<<pi<<endl; //输出pi
 cout.unsetf(ios::scientific); //终止科学计数法
 cout.setf(ios::fixed);   //指定用定点形式输出
 cout.width(12); //指定宽度为十二
 cout.setf(ios::showpos); //输出时显示‘+‘号
 cout.setf(ios::internal); //符号在左侧
 cout.precision(6);   //保留6位小数
 cout<<pi<<endl;  //输出pi
 system("pause");
 return 0;
}

#include <iostream>   

#include <iomanip>   

using namespace std;  

int main()  

{  

    int a;  

    cout<<"input a:";//在控制台上打印字符串   

    cin>>a;  

    cout<<"dec:"<<dec<<a<<endl; //数据以十进制格式输出     

    cout<<"hex:"<<hex<<a<<endl; //以十六进制输出     

    cout<<"oct:"<<setbase(8)<<a<<endl;//以八进制输出    

    char *pt="Jerryson";        

    cout<<setw(10)<<pt<<endl; //输出的字符占十个字符的长度,默认靠左    

    cout<<setfill('*')<<setw(10)<<pt<<endl; //输出的字符占十个字符的长度默认靠左不够的用*号补   

    double pi=22.0/7.0;    

    cout<<setiosflags(ios::scientific)<<setprecision(8);//浮点数以科学计数法输出,精确位数为八位   

    cout<<"pi="<<pi<<endl;  //输出字符串及pi的值     

    cout<<"pi="<<setprecision(4)<<pi<<endl; //输出精确位数为四位pi的值    

    cout<<"pi="<<setiosflags(ios::fixed)<<pi<<endl;//浮点数以定点的格式输出   

    system("pause");  

    return 0;  

}  


 

在撰写嵌入式实习第十五记时,内容应围绕系统功能完善、性能调优、模块测试与团队协作等方面展开。以下为内容撰写参考,结合网络搜索所得的实习记写作模式与嵌入式开发实践要点。 --- ### 嵌入式实习第十五记内容撰写参考 **1. 本主要任务与项目进展** - 完成设备驱动模块的稳定性测试,包括SPI Flash读写优化与CAN总线通信协议的实现。 - 在STM32平台上实现低功耗模式切换,通过RTC定时唤醒机制降低系统整体功耗。 - 集成LoRa通信模块,完成点对点数据传输功能,并通过串口调试工具验证通信可靠性。 **2. 遇到的问题与解决方法** - 在SPI通信中出现数据错位问题,通过调整时钟极性与相位配置(CPOL与CPHA)解决时序不匹配问题。 - CAN总线通信出现仲裁失败,分析发现多个节点ID冲突,通过统一通信协议ID分配策略解决。 - LoRa模块在长距离通信中出现丢包现象,通过增加校验机制与重传策略提升通信稳定性。 **3. 使用的新技术或工具** - 引入PlatformIO进行多平台嵌入式开发,提升代码可移植性与构建效率。 - 使用Logic Analyzer抓取SPI与I2C信号,辅助调试通信时序问题。 - 利用FreeRTOS的事件组(Event Groups)实现多任务同步机制,提升系统响应效率。 **4. 关键代码片段与实现说明** 例如,使用FreeRTOS实现任务同步的代码如下: ```c #include "FreeRTOS.h" #include "event_groups.h" EventGroupHandle_t xEventGroup; void vTaskA(void *pvParameters) { while (1) { xEventGroupSetBits(xEventGroup, BIT_0); vTaskDelay(pdMS_TO_TICKS(500)); } } void vTaskB(void *pvParameters) { while (1) { if (xEventGroupWaitBits(xEventGroup, BIT_0, pdTRUE, pdTRUE, portMAX_DELAY) & BIT_0) { // 执行任务B逻辑 } } } ``` **5. 团队协作与个人成长** - 参与项目阶段性评审会议,汇报模块测试结果与优化方案。 - 协助同事完成Bootloader功能验证,提供串口通信与CRC校验模块支持。 - 编写技术文档《低功耗模式配置手册》,供后续开发人员参考使用。 **6. 收获与反思** - 本深入理解了嵌入式通信协议的实现机制与优化思路,但在使用RTOS事件组时初期出现同步死锁问题,需加强对同步机制的学习。 - 通过使用PlatformIO提升了开发效率,但在跨平台调试过程中遇到库版本不一致问题,后续应规范开发环境配置流程。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值