当前位置: 首页 > news >正文

呼伦贝尔旅游网站建设/seo关键词推广价格

呼伦贝尔旅游网站建设,seo关键词推广价格,北京网站建设一条龙,国际新闻最新消息10条2022在上一篇《移植初步:环境搭建》文章中,我们介绍了环境搭建的相关工作,下一步我们将要为STM3210E开发板构建平台代码。 打开.\tools\bin\SolutionWizard\SolutionWizard.exe,我们用平台向导来搭建我们的项目(具体的图文…

在上一篇《移植初步:环境搭建》文章中,我们介绍了环境搭建的相关工作,下一步我们将要为STM3210E开发板构建平台代码。

打开.\tools\bin\SolutionWizard\SolutionWizard.exe,我们用平台向导来搭建我们的项目(具体的图文步骤请参见:.Net Micro Framework平台移植初步),详细的步骤如下:

1、  选择任务(Choose a Task)

     由于在.Net Micro Framework源码中已经存在CortexM3_sample平台,所以我们选择克隆一个已存在的平台(Clone an Existing Solution)。

2、  选择存在的平台(Clone an Existing Solution)

我们选择:CORTEXM3_SAMPLE

3、  平台属性设置(Solution Properties)

名字(name):STM3210E  注:这个名称很重要,所以一定要慎重填写。

开发者(Author):你的名字。

描述(Description):平台说明。

4、  开发平台基本参数设置(Processor Properties)

    

 

     内存模式我们选择:Small

     其它相关参数,我们从EM-STM3210E开发板的用户手册中就可以查得到。

5、  项目选择(Project Selection)

我们选择如下三个项目:

(1)、tinyclr

(2)、NativeSample

(3)、Tinybooter

6、  功能选择(Feature Selection)

由于STM3210E开发板内存较小,所以我们选择几个比较基本的核心功能,我们选择暂且如下(以后可以根据需要酌情添加即可):

(1)、BlockStorage

(2)、DataStorage

(3)、Debugger

(4)、Diagnostics

(5)、I2C

(6)、InterruptHandler

(7)、Serialization

(8)、SerialPort

(9)、SPI

(10)、Stream

(11)、TinyCore

7、  支持库选择(Unresolved Library Selection)

     该部分的选择和上一步骤的选择紧密相关,如果选择不当,则在编译时,会出现很多错误,所以一定要深入了解后再进行选择,我们目前的选择如下:

    (1)、asyncproccanll_pal

(2)、backlight_hal_stubs

(3)、batterycharger_hal_stubs

(4)、batterymeasurement_hal_stubs

(5)、BlockStorageDriver_stubs

(6)、blockstorage_pal

(7)、blockstorage_pal

(8)、cpu_bootstrap_stubs

(9)、Buttons_pal

(10)、cpu_cache_stubs

(11)、COM_pal

(12)、config_pal_Stubs

(13)、CRC

(14)、Crypto_stub

(15)、Debugger

(16)、Debugger_full

(17)、Diagnostics

(18)、diagnostics_pal

(19)、cpu_ebiu_stubs

(20)、events_pal

(21)、FS_Config_stubs

(22)、Gesture_pal_stubs

(23)、GlobalLock_hal

(24)、cpu_gpio_stubs

(25)、Graphics_stub

(26)、Hardware

(27)、heap_pal

(28)、HeapPersistence

(29)、I2C

(30)、cpu_i2c_stubs

(31)、i2c_pal

(32)、system_initialization_hal

(33)、Ink_pal_stubs

(34)、cpu_intc_stubs

(35)、InterruptHandler_stub

(36)、LargeBuffer_hal_stubs

(37)、lcd_hal_stubs

(38)、cpu_LCD_stubs

(39)、Messaging

(40)、cpu_mmu_stubs

(41)、IOPort

(42)、palevent_pal

(43)、cpu_performancecounter_stubs

(44)、piezo_pal_stubs

(45)、cpu_prestackinit_stubs

(46)、RPC_stub

(47)、Serialization

(48)、SimpleHeap_config

(49)、SimpleHeap

(50)、sockets_pal_stubs

(51)、cpu_spi_stubs

(52)、SPOT_Crypto_stub

(53)、SPOT_Graphics_stub

(54)、SPOT_Hardware

(55)、SPOT_Hardware_SerialPort

(56)、SPOT_IO

(57)、SPOT_Messaging_stub

(58)、SPOT_Serialization

(59)、Stream

(60)、cpu_time_stubs

(61)、Time_pal

(62)、TimeService_pal_stubs

(63)、tinycrt_pal_stubs

(64)、TinyHal

(65)、usart_pal

(66)、cpu_usb_stubs

(67)、usb_pal_stubs

(68)、virtualkey_hal_stubs

(69)、cpu_watchdog_stubs

(70)、Watchdog_pal_stubs

(71)、WireProtocol

 

做完以上几步,我们便完成了最基本的平台代码构建工作,这时我们可以查看.\MicroFramework_3_0\Solutions目录,就会发现已经存在一个STM3210E的目录了。

移植.Net Micro Framework一般先调试NativeSample项目,等NativeSample调试成功后,才进行tinyclr的调试工作。一般来说如果NativeSample调试成功,那么.Net Micro Framework的移植工作也就完成了一大半。

下面我们对NativeSample项目进行scatterfile的配置,由于我们采用MDK工具进行编译,所以我们打开.\Solutions\STM3210E\NativeSample\scatterfile_tools_mdk.xml文件(当然,如果你选用的工具是RVDS,那么你得打开scatterfile_tools_rvds.xml文件),

为了便于调试,我们把程序放到RAM中运行(主要是因为NativeSample项目比较小,如果我们是在调试TinyClr,那么代码就得放到Nor Flash中去了)。

查看EM-STM3210E开发板的用户手册,我们知道片内SRAM 64k,片外扩展SRAM为128K,所以我们把片外SRAM一份为二,分别分配给堆和栈。片内SRAM我们存放代码,不过不要从0x20000000开始的地址分配,我们今后还要把中断向量表放到从0x20000000开始的地址上去。

根据以上信息,我们对scatterfile_tools_mdk.xml文件作如下修改:

 
  1. <Set Name="Heap_Begin"          Value="0x68000000"/> 
  2.  
  3.  <Set Name="Heap_End"            Value="0x6800FFFC"/> 
  4.  
  5.  <Set Name="Stack_Bottom"        Value="+0"/> 
  6.  
  7.  <Set Name="Stack_Top"           Value="0x6801FFFC"/> 
  8.  
  9.  <If Name="TARGETLOCATION" Value="RAM"> 
  10.  
  11.      <Set Name="Code_BaseAddress" Value="0x20001000"/> 
  12.  
  13.      <Set Name="Code_Size"        Value="0x0000F000"/> 
  14.  
  15.      <Set Name="Valid"            Value="true"/> 
  16.  
  17. </If> 
  18.  

 

最后我们还得对.\ DeviceCode\Initialization\tinyhal.cpp文件做一些小小的改动,我们把下面的代码先做一下屏蔽,否则程序运行于此便会当机。

348 ://Buttons_Initialize();

480 ://g_Boot_RAMConstants_CRC = Checksum_RAMConstants();

好了,我们打开命令行,输入如下编译命令并运行:

Msbuild .\Solutions\ STM3210E \dotNetMF.proj /t:build /p:flavor=debug;memory=ram

如果在以上步骤中你没有出过什么差错,我想你一定会编译成功的。

OK,一切顺利,编译成功。但是我们先不要着急用MDK进行调试,因为我们的程序用到了片外SRAM(把它分配给堆和栈),而我们以上的代码中并没有写对其初始化的代码,所以要想使程序正常工作,我们必须首先要初始化片外SRAM。简单期间,我们先编写一个MDK的脚本来完成这个初始化工作。

好了,这一步的工作就暂告一个段落,下篇文章我便介绍MDK脚本的编写,及在NativeSample.cpp中编写一个控制LED灯闪烁的代码,以期来证明我们的EM-STM3210E已经可以初步工作了


 






本文转自yefanqiu51CTO博客,原文链接:http://blog.51cto.com/yfsoft/321240,如需转载请自行联系原作者

http://www.lbrq.cn/news/223705.html

相关文章:

  • 宁波网站建设论坛/制作公司网页多少钱
  • 建设医院网站的重点与难点在于/中国站长工具
  • 深圳的网站建设公司的分类是/东莞seo建站优化工具
  • 凡科快图官网在线制作/广告优化师发展前景
  • 桃城网站建设代理/网站的营销推广方案
  • logo免费设计在线生成下载/seo优化推广流程
  • 佛山高端网站制作/怎么进行网站关键词优化
  • wordpress移动端页面/优化营商环境发言材料
  • 通化网站开发/企业网站怎么制作
  • 软件定制化开发的知识产权归属/seo日常工作都做什么的
  • 大型网站建立/谷歌广告联盟
  • 江山市建设局网站/房产网站模板
  • 南山商城网站建设哪家公司靠谱/南宁seo推广外包
  • 做美食网站/肇庆seo
  • 福田工作招聘/跟我学seo从入门到精通
  • 外贸手工做兼职的网站/福州seo网络推广
  • wordpress微信采集插件/网络优化工程师有多累
  • 新手如何建网站/个人网页设计作品欣赏
  • 巴彦淖尔网站建设/微信上如何投放广告
  • 温州做网站建设/3a汽车集团公司网络营销方案
  • 网站备案级别/网络舆情监测专业
  • 产品设计平台/铜川网站seo
  • 室内设计培训机构排行/青岛谷歌优化公司
  • 没有网站的域名/好搜搜索
  • 织梦做手机网站/seo学徒招聘
  • 网站建设微信公众号小程序app/sem运营是什么意思
  • 不用iis建立网站/seo技术好的培训机构
  • 帮别人做网站推广犯法吗/爱站网怎么使用
  • 校园网站建设意见/常见的微信营销方式有哪些
  • 惠东做网站报价/百度识图识别
  • Vue.js 动画与过渡:让你的界面“活”起来,提升用户体验的视觉魔法!
  • : $ operator is invalid for atomic vectors
  • Linux的相关学习
  • 在Adobe Substance 3D Painter中,已经有基础图层,如何新建一个图层A,clone基础图层的纹理和内容到A图层
  • 工业软件加密锁复制:一场技术与安全的博弈
  • spring-ai-alibaba官方 Playground 示例之联网搜索代码解析