十二月十八号是什么星座| 热伤风吃什么药好得快| 吃什么药能冲开宫腔粘连| 为什么眼睛会有红血丝| 老当益壮是什么意思| 卡罗莱手表是什么档次| 颈椎病头疼吃什么药| 莎莎舞是什么意思| 有什么作用| 电解液是什么| 蜂蜜不能和什么一起吃| gaba是什么| 为什么一热身上就痒| 1977年属什么| 石榴石五行属什么| 打假是什么意思| 铁是什么颜色的| 防冻液红色和绿色有什么区别| 看乳腺应该挂什么科| 咖啡加奶有什么坏处和好处| 三焦指的是什么| 体寒的人吃什么食物好| 李荣浩什么学历| 舌头两边有齿痕是什么原因| 什么人心什么| 百香果有什么作用| 甜不辣是什么| 梦见出国了是什么意思| 手发抖是什么原因引起的年轻人| 金箔是什么| l读什么| 晒太阳补什么| 玫瑰花像什么| 梦见和妈妈吵架是什么意思| 验血糖挂什么科| jsdun是什么牌子的手表| 精炼植物油是什么油| 货值是什么意思| 副研究员什么级别| 四面楚歌什么意思| 嘴巴淡而无味是什么原因| 农历3月12日是什么星座| 4月28日是什么星座| 土黄色裤子配什么颜色上衣| 村书记是什么级别| 翊什么意思| 正常的尿液是什么颜色| 脚趾缝痒用什么药| 安陵容为什么叫安小鸟| 七月什么星座| 展望未来什么意思| 夏天吹什么风| 端午节喝什么酒| 7.28是什么星座| 沁什么意思| 舌苔发白是什么问题| 赎罪是什么意思| 脚心抽筋是什么原因引起的| 大便呈绿色是什么原因| 太阳出来我爬山坡是什么歌| 甲钴胺片有什么副作用| 蚯蚓喜欢吃什么| 失眠吃什么药最好| 桃花什么季节开| 灰姑娘叫什么名字| 血小板计数偏低是什么意思| 急性咽喉炎吃什么药好得快| 偶发性房性早搏是什么意思| 日在校园讲的什么| 空调变频和定频有什么区别| 为什么拉肚子| 咳嗽适合吃什么水果| 全国政协副主席是什么级别| 五红汤什么时候喝最好| 鹅蛋治什么妇科病| 打鼾是什么意思| 三生三世是什么意思| 反射弧是什么意思| 去越南要注意什么| 肠胃不好吃什么比较好| 路冲是什么意思| 7.6什么星座| 什么炒腊肉好吃| 什么是戒断反应| 老是掉头发是什么原因| 阳痿有什么症状| 立冬是什么时候| 肌酸是什么东西| 凤五行属性是什么| 什么风大雨| 春秋大梦是什么意思| 什么情况下要打破伤风| 前壁后壁有什么区别| 什么是尿崩症| tba是什么意思| 午夜是什么时候| 脸部爱出油是什么原因| 吃力不讨好是什么意思| 落地签是什么意思| 1950年是什么年| 尿素偏低是什么原因| 什么人容易得骨髓瘤| 检查淋巴挂什么科| 烟酒不沾的人什么性格| kj是什么单位| 月字旁有什么字| 梦见别人给自己剪头发是什么意思| 什么是化学| 髂胫束在什么位置| 空调滴水什么原因| experiment什么意思| 奶茶喝多了有什么危害| 掂过碌蔗是什么意思| opec是什么意思| 中午饭吃什么| 西兰花不能和什么一起吃| 收官之作什么意思| 电子证件照是什么| 血滴子是什么| 刷牙牙龈出血是什么原因| 威士忌是用什么酿造的| 婴儿老是放屁是什么原因| 什么行业赚钱| 什么是树莓| 什么的鼻子填词形容词| 茯苓的作用是什么| 猴的守护神是什么菩萨| 血糖低吃什么补得最快| 牛叉是什么意思| 朝三暮四是什么生肖| 父亲节要送什么礼物好| eno什么意思| 必承其重上一句是什么| 副鼻窦炎症是什么意思| 什么在千里| 什么叫同型半胱氨酸| 银屑病是什么引起的| 武五行属什么| 璟字五行属什么| 慢性浅表性胃炎吃什么药好| h是什么牌子的皮带| 什么情况下要割包皮| 淋巴细胞低说明什么| 咳嗽是什么原因引起的| fsh是什么| 脚心发麻是什么原因引起的| 阑尾炎吃什么食物好| 送孕妇什么礼物最贴心| 香皂和肥皂有什么区别| 怀孕有什么表现| 嗨体是什么| mixblu是什么牌子| 胸部有硬块挂什么科| 朱砂痣是什么意思| 移动增值业务费是什么| 田可以加什么偏旁| 蟑螂是什么样子的| 烟雾病是什么病| 女人吃什么补气血效果最好| 边缘性行为包括什么| 不来姨妈挂什么科| 甲胎蛋白偏高说明什么| 心梗挂什么科| 油菜花像什么| 桂圆什么时候上市| 感染hpv有什么症状| kay是什么意思| 小哥哥是什么意思| h家是什么牌子| 联姻是什么意思| 孕酮低有什么症状| 青柠是什么意思| 什么是变异性哮喘| 缄默是什么意思| 舒肝解郁胶囊治什么病| 什么快递可以寄活物| 金黄色葡萄球菌是什么| 怜香惜玉是什么意思| 8月28号是什么星座| 肺结核钙化是什么意思| 牛黄清心丸治什么病| 肾气虚吃什么药| 梨子煮水喝有什么功效| 慢性扁桃体炎吃什么药| 燕条和燕盏有什么区别| 同舟共济是什么意思| 入睡难一般是什么原因造成的| 武则天为什么立无字碑| 酸儿辣女什么意思| 妈妈过生日送什么礼物好| 房性逸搏心律是什么意思| 美国为什么不建高铁| 舌头有黑点是什么原因| 牙周炎吃什么药最有效| 鸡蛋有什么营养| 毛豆烧什么好吃| 桃花灼灼什么意思| 日加立念什么字| 脖子出汗多是什么原因女人| 全血检查能查些什么病| 什么牌子的充电宝好| 什么是有机奶粉| 什么地走| 飞蚊症吃什么药| 五指毛桃长什么样子| 敲打是什么意思| 腋下出汗多是什么原因| 公认是什么意思| 红和绿混合是什么颜色| 孩子手抖是什么原因| 幺是什么意思| 心悸是什么| 四海是什么意思| 过期不候是什么意思| 费玉清为什么不结婚| 肝喜欢什么食物有哪些| 拔凉拔凉是什么意思| 亲夫是什么意思| 河豚是什么| 厮守是什么意思| 男人梦见蛇是什么意思| 舌苔厚腻吃什么药| 2001年属什么生肖| fgr医学上是什么意思| 湿疣是什么病| 酸辣土豆丝用什么醋| 什么牌子的益生菌调理肠胃比较好| 米线是什么材料做的| 槟榔吃多了有什么危害| 梦见和死去的亲人吵架是什么意思| 寒门子弟是什么意思| 测五行缺什么| 殿试第一名叫什么| 皮重是什么意思| 九宫八卦是什么意思| 炼乳是什么| 层出不穷什么意思| 二字五行属什么| 吃什么可以让子宫内膜变薄| 武士是什么意思| 格力空调睡眠模式1234什么意思| 宫颈欠光滑是什么意思| 蜘蛛痣长什么样| 寄生虫吃什么药可以杀死| 随餐服用是什么时候吃| 笔试是什么意思| 测血糖挂什么科| 衣服发黄是什么原因| 怀孕一个月有什么症状| 四方八面是什么生肖| 吃红糖有什么好处和坏处| 口干舌燥是什么病的前兆| 白细胞高说明什么问题| 死海为什么叫死海| 夏天有什么蔬菜| 梦见打老公是什么意思| 什么叫葡萄胎| 陈皮是什么| 铁蛋白低吃什么可以补| 送男性朋友什么礼物合适| 什么人适合吃西洋参| 艾灸灸出水泡是什么情况| 什么克土| 工程院院士是什么级别| 百度
打印
[N32WBxxx]

加拿大BC省政府在北京推广天然资源、木材产品及冬季旅游

[复制链接]
594|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Afanx|  楼主 | 2023-2-6 11:20 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 Afanx 于 2023-2-6 11:20 编辑

例程附件:
N32WB03x_SPI_DMA_demo.zip (211.58 KB)

GPIO配置:
void GPIO_Configuration(void)
{
    GPIO_InitType GPIO_InitStructure;

    RCC_EnableAPB2PeriphClk(SPI_MASTER_GPIO_CLK | RCC_APB2_PERIPH_AFIO, ENABLE);

    GPIO_InitStruct(&GPIO_InitStructure);
    /* Configure SPI_MASTER pins: SCK ,MISO and MOSI */
    GPIO_InitStructure.Pin            = SPI_MASTER_PIN_SCK | SPI_MASTER_PIN_MOSI;
    GPIO_InitStructure.GPIO_Speed     = GPIO_SPEED_HIGH;
    GPIO_InitStructure.GPIO_Mode      = GPIO_MODE_AF_PP;
    GPIO_InitStructure.GPIO_Pull      = GPIO_NO_PULL;
    GPIO_InitStructure.GPIO_Alternate = SPI_MASTER_GPIO_AF;
    GPIO_InitPeripheral(SPI_MASTER_GPIO, &GPIO_InitStructure);
}
DMA配置:
void DMA_SPI_Configuration(void)
{
    DMA_InitType DMA_InitStructure;

    RCC_EnableAHBPeriphClk(SPI_MASTER_DMA_CLK, ENABLE);
    /* SPI_MASTER_TX_DMA_CHANNEL configuration */
    DMA_DeInit(SPI_MASTER_TX_DMA_CHANNEL);
    DMA_InitStructure.PeriphAddr     = (uint32_t)&SPI_MASTER->DAT;
    DMA_InitStructure.MemAddr        = (uint32_t)SPI_Master_Tx_Buffer;
    DMA_InitStructure.Direction      = DMA_DIR_PERIPH_DST;
    DMA_InitStructure.BufSize        = BUFFER_SIZE;
    DMA_InitStructure.PeriphInc      = DMA_PERIPH_INC_DISABLE;
    DMA_InitStructure.DMA_MemoryInc  = DMA_MEM_INC_ENABLE;
    DMA_InitStructure.PeriphDataSize = DMA_PERIPH_DATA_SIZE_BYTE;
    DMA_InitStructure.MemDataSize    = DMA_MemoryDataSize_Byte;
    DMA_InitStructure.CircularMode   = DMA_MODE_NORMAL;
    DMA_InitStructure.Priority       = DMA_PRIORITY_HIGH;
    DMA_InitStructure.Mem2Mem        = DMA_M2M_DISABLE;
    DMA_Init(SPI_MASTER_TX_DMA_CHANNEL, &DMA_InitStructure);
    DMA_RequestRemap(SPI_MASTER_TX_DMA_REMAP, DMA, SPI_MASTER_TX_DMA_CHANNEL, ENABLE);
}
SPI配置:
void SPI_Configuration(void)
{
    SPI_InitType SPI_InitStructure;

    RCC_EnableAPB2PeriphClk(SPI_MASTER_CLK, ENABLE);

    SPI_I2S_DeInit(SPI_MASTER);
    /* SPI_MASTER configuration
     * ------------------------------------------------*/
    SPI_InitStructure.DataDirection = SPI_DIR_DOUBLELINE_FULLDUPLEX;
    SPI_InitStructure.SpiMode       = SPI_MODE_MASTER;
    SPI_InitStructure.DataLen       = SPI_DATA_SIZE_8BITS;
    SPI_InitStructure.CLKPOL        = SPI_CLKPOL_HIGH;
    SPI_InitStructure.CLKPHA        = SPI_CLKPHA_SECOND_EDGE;
    SPI_InitStructure.NSS           = SPI_NSS_SOFT;
    SPI_InitStructure.BaudRatePres  = SPI_BR_PRESCALER_32;
    SPI_InitStructure.FirstBit      = SPI_FB_MSB;
    SPI_InitStructure.CRCPoly       = CRC_POLYNOMIAL;
    SPI_Init(SPI_MASTER, &SPI_InitStructure);

    /* Enable SPI_MASTER */
    SPI_Enable(SPI_MASTER, ENABLE);
}
封装SPI_DMA写函数:
void SPI_Write_DMA(SPI_Module* SPIx, uint8_t* writePtr, uint16_t len)
{
    uint32_t timeOut = 0x1000;
    while ((SPI_I2S_GetStatus(SPIx, SPI_I2S_BUSY_FLAG) != RESET) && (timeOut--)) __NOP();  // Wait BUSY

    // SPI_I2S_ReceiveData(SPIx);  // CLear RNE

    SPI_I2S_EnableDma(SPIx, SPI_I2S_DMA_TX, DISABLE);  // Disable DMA request

    DMA_EnableChannel(SPI_MASTER_TX_DMA_CHANNEL, DISABLE); // Disable DMA
    SPI_MASTER_TX_DMA_CHANNEL->MADDR = (uint32_t)writePtr;
    SPI_MASTER_TX_DMA_CHANNEL->TXNUM = len;
    DMA_EnableChannel(SPI_MASTER_TX_DMA_CHANNEL, ENABLE);  // Enable DMA

    SPI_I2S_EnableDma(SPIx, SPI_I2S_DMA_TX, ENABLE);  // DMA Start Work
}
主函数测试:
int main(void)
{
    log_init();

    log_info("\n this is a SPI master DMA Demo.\n");

    GPIO_Configuration();
    DMA_SPI_Configuration();
    SPI_Configuration();
        
    log_info("\n DMA Transfer start.\n");
        
    for (int i = 0; i < 3; i++) {
        SPI_Write_DMA(SPI_MASTER, SPI_Master_Tx_Buffer, BUFFER_SIZE);
               
                while (!DMA_GetFlagStatus(SPI_MASTER_TX_DMA_FLAG, SPI_MASTER_DMA)) __NOP();
    }
        
    log_info("\n DMA Transfer end.\n");

    while (1) {
    }
}
测试结果:




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

本版积分规则

13

主题

51

帖子

2

粉丝
太虚是什么意思 凌晨属于什么时辰 下海的意思是什么 吃止痛药有什么副作用 颌下淋巴结肿大吃什么药
hb是什么意思 什么颜色加什么颜色等于蓝色 什么原因引起低压高 哪吒他妈叫什么名字 手指肿胀是什么原因
葡萄糖高是什么原因 血型o型rh阳性是什么意思 什么是脑梗死 难怪是什么意思 黄芪治什么病
口臭严重是什么原因 玉米是什么时候传入中国的 嫡传弟子是什么意思 木属于五行属什么 泥鳅吃什么饲料
石女是什么样子的hcv9jop2ns5r.cn 鹦鹉拉肚子吃什么药hcv8jop9ns2r.cn 女性阴毛变白是什么原因hcv9jop5ns1r.cn 大便脂肪球是什么意思hcv8jop6ns0r.cn acg文化是什么意思hcv8jop7ns3r.cn
胃胀腹胀吃什么药hcv8jop8ns1r.cn 梦见到处都是蛇预示着什么onlinewuye.com guess是什么牌子hcv7jop6ns0r.cn 处子之身是什么意思hcv8jop2ns6r.cn 贫血吃什么hcv8jop8ns5r.cn
登革热是什么症状hcv8jop1ns9r.cn 喝什么排湿气hcv8jop9ns8r.cn 么么是什么意思hcv9jop8ns0r.cn 根管预备是什么意思hcv8jop1ns2r.cn 脱发缺乏什么维生素wuhaiwuya.com
林黛玉是什么病hcv8jop0ns5r.cn 红楼梦是一部什么小说hcv9jop3ns4r.cn 神父和修女是什么关系hcv9jop2ns7r.cn 发热出汗是什么原因hcv8jop5ns0r.cn p波高尖代表什么hcv8jop6ns7r.cn
百度