




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、2014-2015學(xué)年第1學(xué)期嵌入式操作系統(tǒng)課程設(shè)計(jì)報(bào)告【設(shè)計(jì)題目】矩陣LED字符顯示控制系統(tǒng)設(shè)計(jì)【設(shè)計(jì)目的】1掌握無(wú)操作系統(tǒng)下的硬件軟件設(shè)計(jì)原理和方法;2進(jìn)一步熟悉ARM 處理器的基本結(jié)構(gòu)、指令集、存儲(chǔ)系統(tǒng)以及基本接口編程;3熟悉嵌入式系統(tǒng)各部件的硬件初始化過(guò)程以及基本IO控制方法。4掌握矩陣LED 的應(yīng)用原理【設(shè)計(jì)內(nèi)容】1利用sys_init初始化程序,利用串口實(shí)現(xiàn)PC和開(kāi)發(fā)板的數(shù)據(jù)通信;2編寫(xiě)S3C2410X 處理器的點(diǎn)陣屏驅(qū)動(dòng)程序;3編寫(xiě)S3C2410X 處理器的點(diǎn)陣屏應(yīng)用程序。4. 當(dāng)程序運(yùn)行等待要求從串口輸入學(xué)生姓名的字符串在矩陣LED上顯示出來(lái)。【實(shí)驗(yàn)環(huán)境】硬件:Embest E
2、duKit-IV 平臺(tái),ULINK2 仿真器套件,PC 機(jī);軟件:Vision IDE for ARM 集成開(kāi)發(fā)環(huán)境,Windows XP。【相關(guān)知識(shí)綜述】背景知識(shí)、原理算法等一、硬件部分1點(diǎn)陣屏的結(jié)構(gòu)電路圖1點(diǎn)陣屏的結(jié)構(gòu)電路圖上QL1-QL16為行驅(qū)動(dòng)信號(hào),每個(gè)信號(hào)控制一行, LR1LR16 是點(diǎn)陣屏的列驅(qū)動(dòng)信號(hào),每一個(gè)信號(hào)控制一列。當(dāng)行信號(hào)為高電平而列信號(hào)為低電平,對(duì)應(yīng)的LED就會(huì)亮。CD40941#芯片LL1LL8LL7RSTRDATACLKSTROBECD40942#芯片LL9LL16LL15DATACLKGPB5LQSGPC0GPD10GPB4GPG8STROBELOELOELSTR
3、列鎖存信號(hào)2,S3C2410與點(diǎn)陣屏的連接CD40941#芯片LL1LL8LL7RSTRDATACLKSTROBECD40942#芯片LL9LL16LL15DATACLKGPB5LQSGPC0GPD10GPB4GPG8STROBELOELOELSTR列鎖存信號(hào)圖2 S3C2410ARM處理器與兩片CD4094連接得到16位行選信號(hào)圖以上電路可以通過(guò)S3C2410GPIO口把CPU的并行數(shù)據(jù)(16位兩個(gè)字節(jié)的數(shù)據(jù))打入到兩個(gè)CD4094芯片中并鎖存起來(lái)變成LL1-LL16的行選信號(hào)。各信號(hào)的作用如下表1; 2410引腳CD4094信號(hào)電平高低各信號(hào)的作用GPB4STORBE(RSTR)高行鎖存允
4、許,將串行數(shù)據(jù)大入到CD4094相應(yīng)位低不鎖存GPB5LOE高CD4094 上鎖存的并行數(shù)據(jù)全部輸出(輸出使能)低CD4094 上鎖存的并行數(shù)據(jù)不輸出GPD10CLK高CD4094 允許串行輸入的數(shù)據(jù)發(fā)生變化低CD4094 不允許串行輸入的數(shù)據(jù)發(fā)生變化GPC0DATA高表明串行數(shù)據(jù)為1低表明串行數(shù)據(jù)為0GPG8STORBELSTR高列鎖存允許,將串行數(shù)據(jù)大入到CD4094相應(yīng)位低不鎖存3點(diǎn)陣屏的保護(hù)電路圖3 點(diǎn)陣屏的保護(hù)電路圖為了保護(hù)LED屏加了對(duì)應(yīng)的電阻實(shí)現(xiàn)行限流作用,即LL1-LL16變?yōu)镽Q1-RQ164LED的驅(qū)動(dòng) 加入行驅(qū)動(dòng)電路的目的是實(shí)現(xiàn)LED燈的驅(qū)動(dòng)。這樣由RQ1-RQ16變?yōu)樾?/p>
5、驅(qū)動(dòng)信號(hào)QL1-QL16。Q11-QL16為圖1中的行驅(qū)動(dòng)信號(hào)。圖4 行驅(qū)動(dòng)電路【設(shè)計(jì)思路】采用的數(shù)據(jù)結(jié)構(gòu)、主要的函數(shù)說(shuō)明、程序流程設(shè)計(jì)圖等主要的函數(shù)說(shuō)明:led_init(); :LED顯示矩陣初始化static void refresh_l_display_array(u8 bits, u8 *str) :顯示字符void led_logo_disp(void) :顯示logostruct fonts_struct unsigned char ascii_width;unsigned char ascii_height;unsigned char * ascii_code;unsigned
6、 char ascii_beg;unsigned char ascii_end;【源程序清單】/* File:main.c* Author:embest* Desc:c main entry* History:*/*-*/* include files */*-*/#include "2410lib.h"#include "sys_init.h"#include "fonts.h"#include "led16x16.h"/* name:main* func:c code entry* para:none* ret
7、:none* modify:* comment:*/int main(void) char c; sys_init();/ Initial systemwhile(1)uart_printf("n Please Look At The 16X16 LEDS And Choose Keyn");uart_printf("1、向左移動(dòng)n");uart_printf("2、向左閃爍移動(dòng)n");uart_printf("3、向右移動(dòng)n");uart_printf("4、向右閃爍移動(dòng)n"); c=uart
8、_getch(); uart_printf("%c",c); led_init(); / Initial led diplay if(c='1') l_char_out(0,"_學(xué)號(hào)"); left_out(0,"abcdef"); else if(c='2') l_flash_char_out(0,"_學(xué)號(hào)"); left_out_flash(0,"abcdef"); else if(c='3') r_char_out(0,"_學(xué)號(hào)&q
9、uot;);right_out(0,"abcdef"); else if(c='4') r_flash_char_out(0,"_學(xué)號(hào)"); right_out_flash(0,"abcdef"); /* File:Dotled.c* Author:embest* Desc:DotLed_Test * History:*/*-*/* include files */*-*/#include <stdio.h>#include "2410lib.h"#include "fonts
10、.h"#include "led16x16.h"/*-*/* function declare */*-*/extern void led_char_disp(void);/*-*/* global variables */*-*/u8 l_display_array2*16;u8 assic_buffer3*16;/*=l_display_array:+-+-+| | | | D | E | | | | +-+-+A buffer data and B buffer data ->D buffer dataB buffer data and C buffe
11、r data ->E buffer dataassic_buffer:+-+-+-+| | | | A | B | C |<- update the C buffer and move the B buffer data to the A buffer| | | | and move the C buffer data to the B buffer data+-+-+-+=*/* name:led_update* func:refresh the led display* para:none* ret:none* modify:* comment:*/static void le
12、d_update(void)int j = 20;while(j-)led_char_disp();/* name:l_display_scroll* func:shift the display* para:bits:the position str:point the buffer* ret:none* modify:* comment:*/static void refresh_l_display_array(u8 bits, u8 *str)u32 i;u32 remaining_bits = 8-bits; for(i=0;i<16;i+)l_display_array2*i
13、= (*str<<bits) |(*(str+16)>>remaining_bits);l_display_array2*(i+1)-1 = (*(str+16)<<bits) |(*(str+32)>>remaining_bits);str+; static void refresh_flash_display_array(u8 bits, u8 *str)u32 i;for(i=0;i<16;i+)l_display_array2*i = 0;l_display_array2*(i+1)-1 =0;str+;/* name:l_disp
14、lay_scroll* func:scroll the display* para:str:point the buffer* ret:none* modify:* comment:*/static void l_display_scroll ( u8 *str )int i;for(i=0;i<8;i+)refresh_l_display_array(i, str);led_update(); static void l_flash_display_scroll ( u8 *str )int i;for(i=0;i<8;i+)refresh_l_display_array(i,
15、str);led_update();refresh_flash_display_array(i, str);led_update();static void r_display_scroll ( u8 *str )int i;for(i=8;i>0;i-)refresh_l_display_array(i, str);led_update(); static void r_flash_display_scroll ( u8 *str )int i;for(i=8;i>0;i-)refresh_l_display_array(i, str);led_update();refresh_
16、flash_display_array(i, str);led_update();/* name:copy_data* func:copy data* para:dst:point the dest data src:points the source data* ret:none* modify:* comment:*/static void copy_data(u8 *dst, u8 *src, u32 size)while(size-)*(dst+) = *(src+);/* name:refresh_assic_buffer* func:refresh buffer* para:str
17、:points the new char* ret:none* modify:* comment:*/static void l_refresh_assic_buffer(u8 *str)copy_data(&assic_buffer0, &assic_buffer16,16);copy_data(&assic_buffer16, &assic_buffer32,16);copy_data(&assic_buffer32, str,16);l_display_scroll(assic_buffer);static void l_flash_refresh
18、_assic_buffer(u8 *str)copy_data(&assic_buffer0, &assic_buffer16,16);copy_data(&assic_buffer16, &assic_buffer32,16);copy_data(&assic_buffer32, str,16);l_flash_display_scroll(assic_buffer);static void r_refresh_assic_buffer(u8 *str)copy_data(&assic_buffer32, &assic_buffer16
19、,16);copy_data(&assic_buffer16, &assic_buffer0,16);copy_data(&assic_buffer0, str,16);r_display_scroll(assic_buffer);static void r_flash_refresh_assic_buffer(u8 *str)copy_data(&assic_buffer32, &assic_buffer16,16);copy_data(&assic_buffer16, &assic_buffer0,16);copy_data(&
20、;assic_buffer0, str,16);r_flash_display_scroll(assic_buffer);/* name:char_out* func:display the chars* para:font:0 str:points of the chars* ret:none* modify:* comment:*/ void l_char_out(u8 font, u8 *str)u8 *str_ptr;u8 glyph;glyph = ( u8 )*str;while(glyph != '0' )str_ptr = fontsfont.ascii_cod
21、e + ( glyph - fontsfont.ascii_beg) * fontsfont.ascii_height;l_refresh_assic_buffer(str_ptr);str+;glyph = ( u8 )*str;void l_flash_char_out(u8 font, u8 *str)u8 *str_ptr;u8 glyph;glyph = ( u8 )*str;while(glyph != '0' )str_ptr = fontsfont.ascii_code + ( glyph - fontsfont.ascii_beg) * fontsfont.a
22、scii_height;l_flash_refresh_assic_buffer(str_ptr);str+;glyph = ( u8 )*str;void r_char_out(u8 font, u8 *str)u8 *str_ptr;u8 glyph;glyph = ( u8 )*str;while(glyph != '0' )str_ptr = fontsfont.ascii_code + ( glyph - fontsfont.ascii_beg) * fontsfont.ascii_height;r_refresh_assic_buffer(str_ptr);str+
23、;glyph = ( u8 )*str;void r_flash_char_out(u8 font, u8 *str)u8 *str_ptr;u8 glyph;glyph = ( u8 )*str;while(glyph != '0' )str_ptr = fontsfont.ascii_code + ( glyph - fontsfont.ascii_beg) * fontsfont.ascii_height;r_flash_refresh_assic_buffer(str_ptr);str+;glyph = ( u8 )*str;void left_out(u8 font,
24、 u8 *str)u8 *str_ptr;u8 glyph;glyph = ( u8 )*str;while(glyph != '0' )str_ptr = leftcodefont.ascii_code + ( glyph - leftcodefont.ascii_beg) * leftcodefont.ascii_height;l_refresh_assic_buffer(str_ptr);str+;glyph = ( u8 )*str; void left_out_flash(u8 font, u8 *str)u8 *str_ptr;u8 glyph;glyph = (
25、u8 )*str;while(glyph != '0' )str_ptr = leftcodefont.ascii_code + ( glyph - leftcodefont.ascii_beg) * leftcodefont.ascii_height;l_flash_refresh_assic_buffer(str_ptr);str+;glyph = ( u8 )*str;void right_out(u8 font, u8 *str)u8 *str_ptr;u8 glyph;glyph = ( u8 )*str;while(glyph != '0' )str
26、_ptr = rightcodefont.ascii_code + ( glyph - rightcodefont.ascii_beg) * rightcodefont.ascii_height;r_refresh_assic_buffer(str_ptr);str+;glyph = ( u8 )*str; void right_out_flash(u8 font, u8 *str)u8 *str_ptr;u8 glyph;glyph = ( u8 )*str;while(glyph != '0' )str_ptr = rightcodefont.ascii_code + (
27、glyph - rightcodefont.ascii_beg) * rightcodefont.ascii_height;r_flash_refresh_assic_buffer(str_ptr);str+;glyph = ( u8 )*str;/* name:led_init* func:initial the led display* para:none* ret:none* modify:* comment:*/void led_init(void)rGPBCON = rGPBCON & 0xfff0ff | 0x500; / GPB4,GPB5=01:OutputrGPCCO
28、N = rGPCCON & 0xffff3ffc | 0x4001; / GPC0,GPC7=01:OutputrGPDCON = rGPDCON & 0xffcfffff | 0x100000; / GPD10=01:OutputrGPGCON = rGPGCON & 0xfffcffff | 0x10000; / GPG8=01:Output/* File:fonts.c* Author:embest* Desc:DotLed_Test * History:*/*-*/* include files */*-*/#include "fonts.h"
29、;/ - ASCII字模的數(shù)據(jù)表 - /unsigned char nAsciiDot = / ASCII0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, / - -0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x3C,0x3C,0x3C,0x18,0x18, / -!-0x18,0x00,0x18,0x18,0x00,0x00,0x00,0x00,0x00,0x66,0x66,0x66,0x24,0x00,0x00,0x00, / -"-0x00,0x00,0x00,0x00,0x00
30、,0x00,0x00,0x00,0x00,0x00,0x00,0x6C,0x6C,0xFE,0x6C,0x6C, / -#-0x6C,0xFE,0x6C,0x6C,0x00,0x00,0x00,0x00,0x18,0x18,0x7C,0xC6,0xC2,0xC0,0x7C,0x06, / -$-0x86,0xC6,0x7C,0x18,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC2,0xC6,0x0C,0x18, / -%-0x30,0x60,0xC6,0x86,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x6C,0x6C,0
31、x38,0x76,0xDC, / -&-0xCC,0xCC,0xCC,0x76,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x30,0x60,0x00,0x00,0x00, / -'-0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0C,0x18,0x30,0x30,0x30,0x30, / -(-0x30,0x30,0x18,0x0C,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x18,0x0C,0x0C,0x0C,0x0C, / -)-0x0C,0x0C,0x18
32、,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x66,0x3C,0xFF, / -*-0x3C,0x66,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x18,0x7E, / -+-0x18,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, / -,-0x00,0x18,0x18,0x18,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0
33、x00,0x00,0x00,0x00,0xFE, / -0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, / -.-0x00,0x00,0x18,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x06,0x0C,0x18, / -/-0x30,0x60,0xC0,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0xC6,0xC6,0xCE,0xD6,0xD6, / -0-0xE6,0xC6,0xC6
34、,0x7C,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x38,0x78,0x18,0x18,0x18, / -1-0x18,0x18,0x18,0x7E,0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0xC6,0x06,0x0C,0x18,0x30, / -2-0x60,0xC0,0xC6,0xFE,0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0xC6,0x06,0x06,0x3C,0x06, / -3-0x06,0x06,0xC6,0x7C,0x00,0x00,0x00,0x00,0x00,0x00,0x0C,0
35、x1C,0x3C,0x6C,0xCC,0xFE, / -4-0x0C,0x0C,0x0C,0x1E,0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0xC0,0xC0,0xC0,0xFC,0x0E, / -5-0x06,0x06,0xC6,0x7C,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x60,0xC0,0xC0,0xFC,0xC6, / -6-0xC6,0xC6,0xC6,0x7C,0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0xC6,0x06,0x06,0x0C,0x18, / -7-0x30,0x30,0x
36、30,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0xC6,0xC6,0xC6,0x7C,0xC6, / -8-0xC6,0xC6,0xC6,0x7C,0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0xC6,0xC6,0xC6,0x7E,0x06, / -9-0x06,0x06,0x0C,0x78,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x18,0x00,0x00, / -:-0x00,0x18,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
37、,0x00,0x18,0x18,0x00,0x00, / -;-0x00,0x18,0x18,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x06,0x0C,0x18,0x30,0x60, / -<-0x30,0x18,0x0C,0x06,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0x00, / -=-0x00,0xFE,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x30,0x18,0x0C,0x06, / ->-0x0C
38、,0x18,0x30,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0xC6,0xC6,0x0C,0x18,0x18, / -?-0x18,0x00,0x18,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0xC6,0xC6,0xDE,0xDE, / -0xDE,0xDC,0xC0,0x7C,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x38,0x6C,0xC6,0xC6,0xFE, / -A-0xC6,0xC6,0xC6,0xC6,0x00,0x00,0x00,0x00,0x00,0x0
39、0,0xFC,0x66,0x66,0x66,0x7C,0x66, / -B-0x66,0x66,0x66,0xFC,0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x66,0xC2,0xC0,0xC0,0xC0, / -C-0xC0,0xC2,0x66,0x3C,0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0x6C,0x66,0x66,0x66,0x66, / -D-0x66,0x66,0x6C,0xF8,0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0x66,0x62,0x68,0x78,0x68, / -E-0x60
40、,0x62,0x66,0xFE,0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0x66,0x62,0x68,0x78,0x68, / -F-0x60,0x60,0x60,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x66,0xC2,0xC0,0xC0,0xDE, / -G-0xC6,0xC6,0x66,0x3A,0x00,0x00,0x00,0x00,0x00,0x00,0xC6,0xC6,0xC6,0xC6,0xFE,0xC6, / -H-0xC6,0xC6,0xC6,0xC6,0x00,0x00,0x00,0x00,0x00,0
41、x00,0x3C,0x18,0x18,0x18,0x18,0x18, / -I-0x18,0x18,0x18,0x3C,0x00,0x00,0x00,0x00,0x00,0x00,0x1E,0x0C,0x0C,0x0C,0x0C,0x0C, / -J-0xCC,0xCC,0xCC,0x78,0x00,0x00,0x00,0x00,0x00,0x00,0xE6,0x66,0x6C,0x6C,0x78,0x78, / -K-0x6C,0x66,0x66,0xE6,0x00,0x00,0x00,0x00,0x00,0x00,0xF0,0x60,0x60,0x60,0x60,0x60, / -L-0x
42、60,0x62,0x66,0xFE,0x00,0x00,0x00,0x00,0x00,0x00,0xC6,0xEE,0xFE,0xFE,0xD6,0xC6, / -M-0xC6,0xC6,0xC6,0xC6,0x00,0x00,0x00,0x00,0x00,0x00,0xC6,0xE6,0xF6,0xFE,0xDE,0xCE, / -N-0xC6,0xC6,0xC6,0xC6,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x6C,0xC6,0xC6,0xC6,0xC6, / -O-0xC6,0xC6,0x6C,0x38,0x00,0x00,0x00,0x00,0x00
43、,0x00,0xFC,0x66,0x66,0x66,0x7C,0x60, / -P-0x60,0x60,0x60,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0xC6,0xC6,0xC6,0xC6,0xC6, / -Q-0xC6,0xD6,0xDE,0x7C,0x0C,0x0E,0x00,0x00,0x00,0x00,0xFC,0x66,0x66,0x66,0x7C,0x6C, / -R-0x66,0x66,0x66,0xE6,0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0xC6,0xC6,0x60,0x38,0x0C, / -S-0x06,0xC6,0xC6,0x7C,0x00,0x00,0x00,0x00,0x00
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 跨區(qū)域電商合作推動(dòng)鄉(xiāng)村振興發(fā)展路徑
- 職業(yè)教育中高本一體化的協(xié)同發(fā)展路徑
- 物貿(mào)公司融資管理創(chuàng)新與風(fēng)險(xiǎn)防控策略
- 數(shù)智化轉(zhuǎn)型對(duì)制造業(yè)高質(zhì)量發(fā)展的作用研究
- 盤(pán)活利用閑置低效廠區(qū)廠房實(shí)施方案
- 立體停車(chē)庫(kù)運(yùn)營(yíng)方案
- 惠州市龍門(mén)縣事業(yè)單位招聘筆試真題2024
- 低年級(jí)小學(xué)生體育教學(xué)中的游戲化探索
- 信用服務(wù)管理制度
- 公司化驗(yàn)室管理制度
- 銀行數(shù)字化營(yíng)銷(xiāo)活動(dòng)方案
- 2024年 全國(guó)職業(yè)院校技能大賽(中職組)嬰幼兒保育項(xiàng)目 規(guī)程
- 【北師大版】2024-2025學(xué)年七年級(jí)數(shù)學(xué)下冊(cè)教學(xué)工作計(jì)劃(含進(jìn)度表)
- DB37-T 5316-2025《外墻外保溫工程質(zhì)量鑒定技術(shù)規(guī)程》
- 2025年高速公路建設(shè)協(xié)作協(xié)議
- GB/T 26879-2025糧油儲(chǔ)藏平房倉(cāng)隔熱技術(shù)規(guī)范
- 《流行性乙型腦炎》課件
- 2025年家電清洗中介合同
- 干洗設(shè)備購(gòu)銷(xiāo)合同
- 散劑的工藝流程
- 敏感肌膚的護(hù)理方法
評(píng)論
0/150
提交評(píng)論