打印
[ZLG-MCU]

Flash加密有问题,请指教。附源码。

[复制链接]
1463|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
fhwclq|  楼主 | 2008-4-22 19:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
只要启用FlashProtectSet(0,FlashExecuteOnly)程序就不行了!

在8962上测试。



/****************************************Copyright (c)****************************************************
**                               Guangzhou ZHIYUAN electronics Co.,LTD.
**                                     
**                                 http://www.embedtools.com
**
**--------------File Info---------------------------------------------------------------------------------
** File Name:                     GPIO_IN_OUT.c
** Last modified Date:            2007-09-20 
** Last Version:                  v1.0
** Description:                   Stellaris系列单片机GPIO口操作
** 
**--------------------------------------------------------------------------------------------------------
** Created By:                    Zhou Hai Xin
** Created date:                  2007-09-20 
** Version:                       v1.0
** Descriptions:                  扫描按键是否按下,如果按键按下则点亮LED指示灯,否则熄灭LED指示灯。
**
**--------------------------------------------------------------------------------------------------------
** Modified by:
** Modified date:
** Version:
** Description:
**
*********************************************************************************************************/

#include "hw_memmap.h"
#include "hw_types.h"
#include "gpio.h"
#include "sysctl.h"
#include "systick.h"
#include "FLASH.h"

#define KEY1   GPIO_PIN_2                                               /*  定义KEY1                    */
#define LED3   GPIO_PIN_6                                               /*  定义LED3                    */

/*********************************************************************************************************
** 函数原形:int main(void)
** 功能描述:通过判断KEY1有没有按下,按下则点亮LED3,否则熄灭LED3。
** 参数说明:无
** 返回值:  0
*********************************************************************************************************/
int main(void)
{
    SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOB);                        /*  使能GPIO PB口               */
    SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOE);                        /*  使能GPIO PE口               */    
   
    GPIODirModeSet(GPIO_PORTE_BASE, KEY1, GPIO_DIR_MODE_IN);            /*  设置连接KEY1的PD4为输入     */
    GPIODirModeSet(GPIO_PORTB_BASE, LED3, GPIO_DIR_MODE_OUT);            /*  设置连接LED3的PD7为输出     */

    GPIOPadConfigSet(GPIO_PORTE_BASE, KEY1,                             /*  设置KEY1强度和类型          */
                     GPIO_STRENGTH_4MA,                                 /*  4mA的输出驱动强度           */
                     GPIO_PIN_TYPE_STD);                                /*  设置为推挽管脚              */
    
    GPIOPadConfigSet(GPIO_PORTB_BASE, LED3,                             /*  设置LED3的驱动强度和类型    */
                     GPIO_STRENGTH_4MA,                                 /*  4mA的输出驱动强度           */
                     GPIO_PIN_TYPE_STD);                                /*  设置为推挽管脚              */


     if (GPIOPinRead(GPIO_PORTE_BASE, KEY1)) 如果KEY1按下就不启动保护
         {
                                            
          FlashProtectSet(0,FlashExecuteOnly);
         }
    while (1) {
        if (GPIOPinRead(GPIO_PORTE_BASE, KEY1)) {                       /*读KEY1引脚的值,并判断,如果为
                                                                          高,则熄灭LED3                */
        GPIOPinWrite(GPIO_PORTB_BASE, LED3, LED3);
        }else {                                                         /*  否则点亮LED3                */
        GPIOPinWrite(GPIO_PORTB_BASE, LED3, ~LED3);
        }
    }
    /*  return 0;   */
}
/*********************************************************************************************************
  END FILE
*********************************************************************************************************/

相关帖子

沙发
fhwclq|  楼主 | 2008-4-23 09:30 | 只看该作者

自己顶

自己顶

使用特权

评论回复
板凳
zlgmcu| | 2008-4-23 11:40 | 只看该作者

确实不能这样使用

Flash里放的是代码和固定数表,程序运行过程中必然要去读取Flash,因此不能这样设置。

(zlgmcu_wdx)

使用特权

评论回复
地板
fhwclq|  楼主 | 2008-4-23 12:52 | 只看该作者

那Flash加密就没有意义了??

那Flash加密就没有意义了??

使用特权

评论回复
5
zlgmcu| | 2008-4-25 09:21 | 只看该作者

那种FLASH的保护具有超前性。。

现在的Cortex-m3的编译器还没有支持该功能,以后可能会有支持该功能的编译器。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

8

主题

65

帖子

0

粉丝