搜索
bottom↓
回复: 24

【分享】Micrium uC/Probe 4.0.16.10

  [复制链接]

出0入0汤圆

发表于 2016-6-16 11:21:09 | 显示全部楼层 |阅读模式
uC/Probe 4.0.16.10
具体的详细信息我就不介绍了, 以前帖子里面介绍过。

以前的帖子:
    1)uC/Probe 4.0.16.4:http://www.amobbs.com/thread-5647708-1-1.html
    2)uC/Probe 4.0.16.1:http://www.amobbs.com/thread-5647390-1-1.html
    3)uC/Probe 3.6.15.700:http://www.amobbs.com/thread-5636836-1-1.html

1、uC/Probe 4.0.16.10 安装程序
   
   
   
   
   
   
   

2、和谐文件
   
   
   
    和谐方法:
    1)安装软件
    2)将下载的和谐文件解压后,覆盖安装目录下的同名文件。


最后说明一下:
    1)和谐软件仅限大家学习和研究使用,如果商用请购买正版软件,因此产生的版权纠纷与本人无关。
    2)为了后续大家能继续“研究和学习”新版软件,请大家低调使用,勿大范围扩散,更谢绝转至其他论坛,否则后面新版本和谐不了了大家都没得玩了。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2016-6-18 09:21:15 | 显示全部楼层
谢谢分享!

出0入0汤圆

发表于 2016-6-18 10:08:40 | 显示全部楼层
谢谢分享

出0入4汤圆

发表于 2016-6-18 10:50:13 来自手机 | 显示全部楼层
谢谢啦,非常好

出0入0汤圆

发表于 2016-6-18 18:08:31 来自手机 | 显示全部楼层
多谢分享,收藏了

出0入0汤圆

发表于 2016-6-18 18:18:40 | 显示全部楼层
多写分享,非常有用。

出0入24汤圆

发表于 2016-6-19 00:03:45 | 显示全部楼层
LZ好人啊,高手

出0入0汤圆

发表于 2016-6-19 09:25:21 | 显示全部楼层
谢谢分享。。。。。

出0入0汤圆

发表于 2016-6-20 12:57:42 | 显示全部楼层
楼主!上一版的V8闪退问题这版已经修复了,已经测试完毕,变量在图表上已经显示出来啦!!

出0入0汤圆

发表于 2016-6-20 13:01:53 | 显示全部楼层
问下楼主,你的ucos-ii内核能在awareness界面上显示吗?我的ucos-ii显示不出来。。。看手册说需要将几个函数添进去,但是找不到宏定义和函数体,楼主你知道吗?
再多说一句:楼主造福大众啊!感激不尽

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2016-6-20 15:02:06 | 显示全部楼层
深情呼唤楼主中。。。

出0入0汤圆

 楼主| 发表于 2016-6-21 00:18:37 | 显示全部楼层
zlogon 发表于 2016-6-20 13:01
问下楼主,你的ucos-ii内核能在awareness界面上显示吗?我的ucos-ii显示不出来。。。看手册说需要将几个函 ...

首先,我好久没用 uC/OS-II了,我现在现在在用uC/OS-III (发现并使用uC/Probe这个软件之前,我就开始用uC/OS-III),所以现在我也没有uC/OS-II的工程和硬件可以测试。

然后在说下你说的这2个地方, 自从uC/OS-III开始,它的代码把跟CPU操作有关的一些定义和函数单独提取出来形成了一个“uC-CPU”的库了,记得之前看 uC/OS-III 书籍中作者说是为了更容易通过某些软件认证,具体的不详。

我刚刚也看了,我的代码中,确实有调用过这些函数(也是以前用官方的移植代码中Copy过来的),如下是我现在工程的Main函数:
  1. int main(void)
  2. {
  3.     OS_ERR err;
  4.    
  5.     NVIC_SetVectorTable(NVIC_VectTab_FLASH,SystemAddress - 0x08000000);
  6.   
  7.     CPU_Init();                                                 /* Initialize the uC/CPU services                       */
  8.     Mem_Init();                                                 /* Initialize Memory Mmanagment Module                  */
  9.   
  10.     CPU_IntDis();
  11.     OSInit(&err);                                                //OS初始化         
  12.     Task_Monitor_Create();                            //建立任务监视器任务(其他任务在此任务中创建)
  13.     OSStart(&err);                                           //启动OS,打开总中断
  14.     return(0);
  15. }
复制代码


我刚刚也试了,把这些函数屏蔽掉,在编译运行的话,虽然硬件也可以工作,但是uC/Probe却无法显示任务信息了。  至于uC/OS-II该如何解决,我就不清楚了。你可以试试在 Micrium 官网找个 uC/OS-II 移植的工程,看看里面有没有相应的代码。

此外,在第一个任务中,系统时钟打开、硬件初始化完毕后,建立其他任务之前,还运行了如下代码:
  1.         cpu_clk_freq = BSP_CPU_ClkFreq();                           /* Determine SysTick reference freq.                    */
  2.         cnts = cpu_clk_freq / (CPU_INT32U)OSCfg_TickRate_Hz;        /* Determine nbr SysTick increments                     */
  3.         OS_CPU_SysTickInit(cnts);                                   /* Init uC/OS periodic time src (SysTick).              */                                                /* Initialize Memory Management Module                  */

  4. #if OS_CFG_STAT_TASK_EN > 0u
  5.         OSStatTaskCPUUsageInit(&err);                               /* Compute CPU capacity with no task running            */
  6. #endif
复制代码


以下是另外一些函数,也是从官方的工程中Copy过来的:(BSP_Init()函数除外,这个是我自己写的)
  1. #include "bsp.h"

  2. /*
  3. *********************************************************************************************************
  4. *                                             REGISTERS
  5. *********************************************************************************************************
  6. */

  7. #define  DWT_CR      *(CPU_REG32 *)0xE0001000
  8. #define  DWT_CYCCNT  *(CPU_REG32 *)0xE0001004
  9. #define  DEM_CR      *(CPU_REG32 *)0xE000EDFC
  10. #define  DBGMCU_CR   *(CPU_REG32 *)0xE0042004


  11. /*
  12. *********************************************************************************************************
  13. *                                            REGISTER BITS
  14. *********************************************************************************************************
  15. */

  16. #define  DBGMCU_CR_TRACE_IOEN_MASK       0x10
  17. #define  DBGMCU_CR_TRACE_MODE_ASYNC      0x00
  18. #define  DBGMCU_CR_TRACE_MODE_SYNC_01    0x40
  19. #define  DBGMCU_CR_TRACE_MODE_SYNC_02    0x80
  20. #define  DBGMCU_CR_TRACE_MODE_SYNC_04    0xC0
  21. #define  DBGMCU_CR_TRACE_MODE_MASK       0xC0

  22. #define  DEM_CR_TRCENA                   (1 << 24)

  23. #define  DWT_CR_CYCCNTENA                (1 <<  0)

  24. /*
  25. *********************************************************************************************************
  26. *                                               BSP_Init()
  27. *
  28. * Description : Initialize the Board Support Package (BSP).
  29. *
  30. * Argument(s) : none.
  31. *
  32. * Return(s)   : none.
  33. *
  34. * Caller(s)   : Application.
  35. *
  36. * Note(s)     : (1) This function SHOULD be called before any other BSP function is called.
  37. *********************************************************************************************************
  38. */

  39. void BSP_Init (void)
  40. {
  41.     GPIO_DeInit(GPIOA);
  42.     GPIO_DeInit(GPIOB);
  43.     GPIO_DeInit(GPIOC);
  44.     GPIO_DeInit(GPIOD);
  45.     GPIO_DeInit(GPIOE);
  46.     GPIO_DeInit(GPIOF);
  47.     GPIO_DeInit(GPIOG);
  48.        
  49.     IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable);      /* 写入0x5555,使能看门狗寄存器的写入*/
  50.     IWDG_SetPrescaler(IWDG_Prescaler_256);      /* 时钟分频,40K/256=156HZ(6.4ms)*/
  51.     IWDG_SetReload(3125);        /* 喂狗时间 20s/6.4ms=3125 .注意不能大于0xfff*/
  52.     IWDG_ReloadCounter();
  53.     IWDG_Enable();
  54.        
  55.     RCC_AHBPeriphClockCmd(RCC_AHBPeriph_CRC, ENABLE);
  56.     RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR | RCC_APB1Periph_BKP, ENABLE);
  57.     PWR_BackupAccessCmd(ENABLE);
  58.    
  59.     Delay_Init();
  60.     RTC_Init();
  61.     SRAM_Init();
  62.     LCD_X_TFT_Init();
  63.     Relay_Init();
  64.     LED_Init();
  65.     Buzzer_Init();
  66.     EEP_Init();
  67.     DACx_Init();
  68.     ADCx_Init();
  69.     RS232_Init();

  70.     CH376_PORT_INIT( );  /* 接口硬件初始化 */
  71.        
  72. }


  73. /*
  74. *********************************************************************************************************
  75. *                                            BSP_CPU_ClkFreq()
  76. *
  77. * Description : Read CPU registers to determine the CPU clock frequency of the chip.
  78. *
  79. * Argument(s) : none.
  80. *
  81. * Return(s)   : The CPU clock frequency, in Hz.
  82. *
  83. * Caller(s)   : Application.
  84. *
  85. * Note(s)     : none.
  86. *********************************************************************************************************
  87. */

  88. CPU_INT32U  BSP_CPU_ClkFreq (void)
  89. {
  90.     RCC_ClocksTypeDef  rcc_clocks;


  91.     RCC_GetClocksFreq(&rcc_clocks);

  92.     return ((CPU_INT32U)rcc_clocks.HCLK_Frequency);
  93. }


  94. /*
  95. *********************************************************************************************************
  96. *                                          CPU_TS_TmrInit()
  97. *
  98. * Description : Initialize & start CPU timestamp timer.
  99. *
  100. * Argument(s) : none.
  101. *
  102. * Return(s)   : none.
  103. *
  104. * Caller(s)   : CPU_TS_Init().
  105. *
  106. *               This function is an INTERNAL CPU module function & MUST be implemented by application/
  107. *               BSP function(s) [see Note #1] but MUST NOT be called by application function(s).
  108. *
  109. * Note(s)     : (1) CPU_TS_TmrInit() is an application/BSP function that MUST be defined by the developer
  110. *                   if either of the following CPU features is enabled :
  111. *
  112. *                   (a) CPU timestamps
  113. *                   (b) CPU interrupts disabled time measurements
  114. *
  115. *                   See 'cpu_cfg.h  CPU TIMESTAMP CONFIGURATION  Note #1'
  116. *                     & 'cpu_cfg.h  CPU INTERRUPTS DISABLED TIME MEASUREMENT CONFIGURATION  Note #1a'.
  117. *
  118. *               (2) (a) Timer count values MUST be returned via word-size-configurable 'CPU_TS_TMR'
  119. *                       data type.
  120. *
  121. *                       (1) If timer has more bits, truncate timer values' higher-order bits greater
  122. *                           than the configured 'CPU_TS_TMR' timestamp timer data type word size.
  123. *
  124. *                       (2) Since the timer MUST NOT have less bits than the configured 'CPU_TS_TMR'
  125. *                           timestamp timer data type word size; 'CPU_CFG_TS_TMR_SIZE' MUST be
  126. *                           configured so that ALL bits in 'CPU_TS_TMR' data type are significant.
  127. *
  128. *                           In other words, if timer size is not a binary-multiple of 8-bit octets
  129. *                           (e.g. 20-bits or even 24-bits), then the next lower, binary-multiple
  130. *                           octet word size SHOULD be configured (e.g. to 16-bits).  However, the
  131. *                           minimum supported word size for CPU timestamp timers is 8-bits.
  132. *
  133. *                       See also 'cpu_cfg.h   CPU TIMESTAMP CONFIGURATION  Note #2'
  134. *                              & 'cpu_core.h  CPU TIMESTAMP DATA TYPES     Note #1'.
  135. *
  136. *                   (b) Timer SHOULD be an 'up'  counter whose values increase with each time count.
  137. *
  138. *                   (c) When applicable, timer period SHOULD be less than the typical measured time
  139. *                       but MUST be less than the maximum measured time; otherwise, timer resolution
  140. *                       inadequate to measure desired times.
  141. *
  142. *                   See also 'CPU_TS_TmrRd()  Note #2'.
  143. *********************************************************************************************************
  144. */

  145. #if (CPU_CFG_TS_TMR_EN == DEF_ENABLED)
  146. void  CPU_TS_TmrInit (void)
  147. {
  148.     CPU_INT32U  cpu_clk_freq_hz;


  149.     DEM_CR         |= (CPU_INT32U)DEM_CR_TRCENA;                /* Enable Cortex-M3's DWT CYCCNT reg.                   */
  150.     DWT_CYCCNT      = (CPU_INT32U)0u;
  151.     DWT_CR         |= (CPU_INT32U)DWT_CR_CYCCNTENA;

  152.     cpu_clk_freq_hz = BSP_CPU_ClkFreq();
  153.     CPU_TS_TmrFreqSet(cpu_clk_freq_hz);
  154. }
  155. #endif


  156. /*$PAGE*/
  157. /*
  158. *********************************************************************************************************
  159. *                                           CPU_TS_TmrRd()
  160. *
  161. * Description : Get current CPU timestamp timer count value.
  162. *
  163. * Argument(s) : none.
  164. *
  165. * Return(s)   : Timestamp timer count (see Notes #2a & #2b).
  166. *
  167. * Caller(s)   : CPU_TS_Init(),
  168. *               CPU_TS_Get32(),
  169. *               CPU_TS_Get64(),
  170. *               CPU_IntDisMeasStart(),
  171. *               CPU_IntDisMeasStop().
  172. *
  173. *               This function is an INTERNAL CPU module function & MUST be implemented by application/
  174. *               BSP function(s) [see Note #1] but SHOULD NOT be called by application function(s).
  175. *
  176. * Note(s)     : (1) CPU_TS_TmrRd() is an application/BSP function that MUST be defined by the developer
  177. *                   if either of the following CPU features is enabled :
  178. *
  179. *                   (a) CPU timestamps
  180. *                   (b) CPU interrupts disabled time measurements
  181. *
  182. *                   See 'cpu_cfg.h  CPU TIMESTAMP CONFIGURATION  Note #1'
  183. *                     & 'cpu_cfg.h  CPU INTERRUPTS DISABLED TIME MEASUREMENT CONFIGURATION  Note #1a'.
  184. *
  185. *               (2) (a) Timer count values MUST be returned via word-size-configurable 'CPU_TS_TMR'
  186. *                       data type.
  187. *
  188. *                       (1) If timer has more bits, truncate timer values' higher-order bits greater
  189. *                           than the configured 'CPU_TS_TMR' timestamp timer data type word size.
  190. *
  191. *                       (2) Since the timer MUST NOT have less bits than the configured 'CPU_TS_TMR'
  192. *                           timestamp timer data type word size; 'CPU_CFG_TS_TMR_SIZE' MUST be
  193. *                           configured so that ALL bits in 'CPU_TS_TMR' data type are significant.
  194. *
  195. *                           In other words, if timer size is not a binary-multiple of 8-bit octets
  196. *                           (e.g. 20-bits or even 24-bits), then the next lower, binary-multiple
  197. *                           octet word size SHOULD be configured (e.g. to 16-bits).  However, the
  198. *                           minimum supported word size for CPU timestamp timers is 8-bits.
  199. *
  200. *                       See also 'cpu_cfg.h   CPU TIMESTAMP CONFIGURATION  Note #2'
  201. *                              & 'cpu_core.h  CPU TIMESTAMP DATA TYPES     Note #1'.
  202. *
  203. *                   (b) Timer SHOULD be an 'up'  counter whose values increase with each time count.
  204. *
  205. *                       (1) If timer is a 'down' counter whose values decrease with each time count,
  206. *                           then the returned timer value MUST be ones-complemented.
  207. *
  208. *                   (c) (1) When applicable, the amount of time measured by CPU timestamps is
  209. *                           calculated by either of the following equations :
  210. *
  211. *                           (A) Time measured  =  Number timer counts  *  Timer period
  212. *
  213. *                                   where
  214. *
  215. *                                       Number timer counts     Number of timer counts measured
  216. *                                       Timer period            Timer's period in some units of
  217. *                                                                   (fractional) seconds
  218. *                                       Time measured           Amount of time measured, in same
  219. *                                                                   units of (fractional) seconds
  220. *                                                                   as the Timer period
  221. *
  222. *                                                  Number timer counts
  223. *                           (B) Time measured  =  ---------------------
  224. *                                                    Timer frequency
  225. *
  226. *                                   where
  227. *
  228. *                                       Number timer counts     Number of timer counts measured
  229. *                                       Timer frequency         Timer's frequency in some units
  230. *                                                                   of counts per second
  231. *                                       Time measured           Amount of time measured, in seconds
  232. *
  233. *                       (2) Timer period SHOULD be less than the typical measured time but MUST be less
  234. *                           than the maximum measured time; otherwise, timer resolution inadequate to
  235. *                           measure desired times.
  236. *********************************************************************************************************
  237. */

  238. #if (CPU_CFG_TS_TMR_EN == DEF_ENABLED)
  239. CPU_TS_TMR  CPU_TS_TmrRd (void)
  240. {
  241.     return ((CPU_TS_TMR)DWT_CYCCNT);
  242. }
  243. #endif
复制代码


以上代码供参考。

出0入0汤圆

发表于 2016-6-21 08:14:18 | 显示全部楼层
谢谢啦,非常好

出0入0汤圆

发表于 2016-6-21 09:07:05 | 显示全部楼层
谢谢,我再试试ucos-ii,看看能不能跑起来,毕竟ucos-ii资料还比较全

出0入0汤圆

发表于 2016-6-21 09:07:27 | 显示全部楼层
再次感谢楼主

出0入4汤圆

发表于 2016-6-21 10:25:38 | 显示全部楼层
官网都只看到uC/Probe 4.0.16.4版本啊,这10版本哪可以下载?

出0入0汤圆

 楼主| 发表于 2016-6-22 10:12:58 | 显示全部楼层
gagmeng 发表于 2016-6-21 10:25
官网都只看到uC/Probe 4.0.16.4版本啊,这10版本哪可以下载?

首先在你的电脑上安装 uC/Probe 4.0.16.4,安装好后运行的时候,会提示你更新,你选择更新, 就会在你的 系统一个临时目录下,下载一个 update.exe 文件,  这个 update.exe 实际上就是 uC/Probe 4.0.16.10

出0入12汤圆

发表于 2016-6-23 06:58:39 | 显示全部楼层
支持,呵呵。

出0入0汤圆

发表于 2016-6-23 08:44:13 | 显示全部楼层
好东西啊

出0入0汤圆

发表于 2016-6-29 16:07:48 | 显示全部楼层
谢谢分享,只是下载的时候报病毒

出0入0汤圆

发表于 2016-7-13 09:53:09 | 显示全部楼层
这个必须领起来!强大的工具,话说这个工具刚出来的时候我就一直在找和谐版本,今天终于看到大牛了

出0入4汤圆

发表于 2016-7-13 13:49:42 | 显示全部楼层
谢谢分享

出0入0汤圆

发表于 2017-5-18 08:04:15 | 显示全部楼层
感谢!好人长寿!

出0入0汤圆

发表于 2017-7-20 18:59:23 | 显示全部楼层
正在官网下载4.2.1.544,看看楼主的key能否使用

出0入0汤圆

 楼主| 发表于 2017-7-21 09:04:54 | 显示全部楼层
guxingganyue 发表于 2017-7-20 18:59
正在官网下载4.2.1.544,看看楼主的key能否使用

你下载的4.2.1.544 是最新版, 他这个之前的版本就是 4.2.17 开头, 我也很奇怪。   破解不能混用, 每个版本都不一样。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-19 00:06

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表