NSS_01 开始

  工作中一直使用asp.net webform, 最近有一个新的小项目, 决定用asp.net mvc3, 边学习边工作吧,记录一下开发过程中的问题,因为工作嘛,只记录问题,可能不会很详细。

  准备使用asp.net mvc3 + entlib5.0 + extjs 4.2进行开发, 全用extjs4.2 mvc基本就决定了只能采用opoa模型了。因为系统只有一个页面, 所以就不用太关注asp.net mvc的页面层的内容, 学习的难度就降低了很多。项目层级结构如下:

  1. NSS.Model: 实体层
  2. NSS.Until: 常用操作辅助类,如guid, 加密,日期等操作
  3. NSS.IDao: 包含IBaseDao,和其它实体操作接口
  4. NSS.Dao: 包含BaseDao, 其它实体操作类继承BaseDao和自身实体操作接口
  5. NSS.IBaseService:
  6. NSS.BaseService:
  7. NSS.Web

 

转载于:https://www.cnblogs.com/taotaonwsuaf/p/3211982.html

#include "main.h" void SPI_Config(void) { RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE); RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE); RCC_APB1PeriphClockCmd(RCC_APB1Periph_SPI3,ENABLE); GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable,ENABLE); GPIO_InitTypeDef GPIO_InitStruct; GPIO_InitStruct.GPIO_Mode = GPIO_Mode_AF_PP; GPIO_InitStruct.GPIO_Pin = GPIO_Pin_3 | GPIO_Pin_5; GPIO_InitStruct.GPIO_Speed = GPIO_Speed_50MHz; GPIO_Init(GPIOB,&GPIO_InitStruct); GPIO_InitStruct.GPIO_Mode = GPIO_Mode_Out_PP; GPIO_InitStruct.GPIO_Pin = GPIO_Pin_6; GPIO_InitStruct.GPIO_Speed = GPIO_Speed_50MHz; GPIO_Init(GPIOB,&GPIO_InitStruct); GPIO_InitStruct.GPIO_Mode = GPIO_Mode_IN_FLOATING; GPIO_InitStruct.GPIO_Pin = GPIO_Pin_4; GPIO_Init(GPIOB,&GPIO_InitStruct); SPI3_NSS_High(); SPI_InitTypeDef SPI_InitStruct; SPI_InitStruct.SPI_BaudRatePrescaler = SPI_BaudRatePrescaler_2; SPI_InitStruct.SPI_CPHA = SPI_CPHA_1Edge; SPI_InitStruct.SPI_CPOL = SPI_CPOL_Low; // SPI_InitStruct.SPI_CRCPolynomial = ; SPI_InitStruct.SPI_DataSize = SPI_DataSize_8b; SPI_InitStruct.SPI_Direction = SPI_Direction_2Lines_FullDuplex; SPI_InitStruct.SPI_FirstBit = SPI_FirstBit_MSB; SPI_InitStruct.SPI_Mode = SPI_Mode_Master; SPI_InitStruct.SPI_NSS = SPI_NSS_Soft; SPI_Init(SPI3,&SPI_InitStruct); SPI_Cmd(SPI3,ENABLE); } void SPI3_NSS_Low(void) { GPIO_ResetBits(GPIOB, GPIO_Pin_6); } void SPI3_NSS_High(void) { GPIO_SetBits(GPIOB, GPIO_Pin_6); } uint8_t FLASH_SendByte(uint8_t byte) { while(SPI_I2S_GetFlagStatus(SPI3,SPI_I2S_FLAG_TXE) == RESET); SPI_I2S_SendData(SPI3,byte); while(SPI_I2S_GetFlagStatus(SPI3,SPI_I2S_FLAG_RXNE) == RESET); return SPI_I2S_ReceiveData(SPI3); } uint8_t Flash_ID[4]; uint8_t Flash_Send[] = {0x9F, 0xFF}; uint32_t Flash_ID_Data = 0; void ReadFlash_ID(void) { SPI3_NSS_Low(); Flash_ID[0] = FLASH_SendByte(0x9F); Flash_ID[1] = FLASH_SendByte(Flash_Send[1]); Flash_ID[2] = FLASH_SendByte(Flash_Send[1]); Flash_ID[3] = FLASH_SendByte(Flash_Send[1]); SPI3_NSS_High(); Flash_ID_Data = (Flash_ID[0] << 24) + (Flash_ID[1] << 16) + (Flash_ID[2] << 8) + Flash_ID[3]; printf("Flash_ID_Data:%X\r\n",Flash_ID_Data); } static void FLASH_WriteEnable(void) { SPI3_NSS_Low(); FLASH_SendByte(0x06); SPI3_NSS_High(); } static void FLASH_Wait(void) { uint8_t WAIT_value = 0; SPI3_NSS_Low(); FLASH_SendByte(0x05); do{ WAIT_value = FLASH_SendByte(0xFF); }while((WAIT_value & 0x01) == SET); SPI3_NSS_High(); } void FLASH_Clean(uint32_t CleanAddr) { FLASH_WriteEnable(); SPI3_NSS_Low(); FLASH_SendByte(0x20); FLASH_SendByte((CleanAddr & 0xFF0000) >> 16); FLASH_SendByte((CleanAddr & 0xFF00) >> 8); FLASH_SendByte((CleanAddr & 0xFF) >> 0); SPI3_NSS_High(); FLASH_Wait(); } void FLASH_PageWrite(uint8_t * DATA,uint32_t ADDR,uint8_t DATA_size) { FLASH_WriteEnable(); SPI3_NSS_Low(); FLASH_SendByte(0x20); FLASH_SendByte((ADDR & 0xFF0000) >> 16); FLASH_SendByte((ADDR & 0xFF00) >> 8); FLASH_SendByte((ADDR & 0xFF) >> 0); while(DATA_size--) { FLASH_SendByte(* DATA); DATA++; } SPI3_NSS_High(); FLASH_Wait(); } void FLASH_PageRead(uint8_t * DATA,uint32_t ADDR,uint8_t DATA_size) { FLASH_WriteEnable(); SPI3_NSS_Low(); FLASH_SendByte(0x20); FLASH_SendByte((ADDR & 0xFF0000) >> 16); FLASH_SendByte((ADDR & 0xFF00) >> 8); FLASH_SendByte((ADDR & 0xFF) >> 0); while(DATA_size--) { * DATA = FLASH_SendByte(0xFF); DATA++; } SPI3_NSS_High(); }在此代码条件下,实现FLASH记录灯的状态
07-09
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值