`
pleasetojava
  • 浏览: 752750 次
  • 性别: Icon_minigender_2
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

贴上我的板子的44b0init.s程序

阅读更多

我的板子上这个程序好像是为数不多的可以正常运行的初始化程序,其他的在initstacks时候就不行了,保存一下哦

INCLUDE option.s
INCLUDE memcfg.s

;Memory Area
;GCS6 16M 16bit(2MB) DRAM/SDRAM(0xc000000-0xc7fffff)
;APP RAM=0xc000000~0xc1effff
;44BMON RAM=0xc7f0000-0xc7fffff
;STACK =0xc7ffa00

;Interrupt Control
INTPND EQU0x01e00004
INTMOD EQU0x01e00008
INTMSK EQU0x01e0000c
I_ISPR EQU0x01e00020
I_CMST EQU0x01e0001c

;Watchdog timer
WTCON EQU0x01d30000

;Clock Controller
PLLCON EQU0x01d80000
CLKCON EQU0x01d80004
LOCKTIME EQU0x01d8000c

;Memory Controller
REFRESH EQU 0x01c80024

;Pre-defined constants
USERMODE EQU0x10
FIQMODE EQU0x11
IRQMODE EQU0x12
SVCMODE EQU0x13
ABORTMODE EQU0x17
UNDEFMODE EQU0x1b
MODEMASK EQU0x1f
NOINT EQU0xc0

;check if tasm.exe is used.
GBLL THUMBCODE
[ {CONFIG} = 16
THUMBCODE SETL{TRUE}
CODE32
|
THUMBCODE SETL{FALSE}
]

[ THUMBCODE
CODE32 ;for start-up code for Thumb mode
]

MACRO
$HandlerLabel HANDLER $HandleLabel

$HandlerLabel
sub sp,sp,#4 ;decrement sp(to store jump address)
stmfd sp!,{r0} ;PUSH the work register to stack(lr does't push because it return to original address)
ldr r0,=$HandleLabel;load the address of HandleXXX to r0
ldr r0,[r0] ;load the contents(service routine start address) of HandleXXX
str r0,[sp,#4] ;store the contents(ISR) of HandleXXX to stack
ldmfd sp!,{r0,pc} ;POP the work register and pc(jump to ISR)
MEND

IMPORT|Image$$RO$$Limit| ; End of ROM code (=start of ROM data)
IMPORT|Image$$RW$$Base| ; Base of RAM to initialise
IMPORT|Image$$ZI$$Base| ; Base and limit of area
IMPORT|Image$$ZI$$Limit| ; to zero initialise

IMPORT Main ; The main entry of mon program

AREA Init,CODE,READONLY

ENTRY
b ResetHandler ;for debug
b HandlerUndef ;handlerUndef
b HandlerSWI ;SWI interrupt handler
b HandlerPabort ;handlerPAbort
b HandlerDabort ;handlerDAbort
b . ;handlerReserved
;************************************
b HandlerIRQ
b HandlerFIQ
;***IMPORTANT NOTE***
;If the H/W vectored interrutp mode is enabled, The above two instructions should
;be changed like below, to work-around with H/W bug of S3C44B0X interrupt controller.
; b HandlerIRQ -> subs pc,lr,#4
; b HandlerIRQ -> subs pc,lr,#4
;************************************
VECTOR_BRANCH
ldr pc,=HandlerEINT0 ;mGA 硬件中断向量表H/W interrupt vector table
ldr pc,=HandlerEINT1 ;
ldr pc,=HandlerEINT2 ;
ldr pc,=HandlerEINT3 ;
ldr pc,=HandlerEINT4567 ;
ldr pc,=HandlerTICK ;mGA
b .
b .
ldr pc,=HandlerZDMA0 ;mGB
ldr pc,=HandlerZDMA1 ;
ldr pc,=HandlerBDMA0 ;
ldr pc,=HandlerBDMA1 ;
ldr pc,=HandlerWDT ;
ldr pc,=HandlerUERR01 ;mGB
b .
b .
ldr pc,=HandlerTIMER0 ;mGC
ldr pc,=HandlerTIMER1 ;
ldr pc,=HandlerTIMER2 ;
ldr pc,=HandlerTIMER3 ;
ldr pc,=HandlerTIMER4 ;
ldr pc,=HandlerTIMER5 ;mGC
b .
b .
ldr pc,=HandlerURXD0 ;mGD
ldr pc,=HandlerURXD1 ;
ldr pc,=HandlerIIC ;
ldr pc,=HandlerSIO ;
ldr pc,=HandlerUTXD0 ;
ldr pc,=HandlerUTXD1 ;mGD
b .
b .
ldr pc,=HandlerRTC ;mGKA
b . ;
b . ;
b . ;
b . ;
b . ;mGKA
b .
b .
ldr pc,=HandlerADC ;mGKB
b . ;
b . ;
b . ;
b . ;
b . ;mGKB
b .
b .
;0xe0=EnterPWDN
ldr pc,=EnterPWDN

LTORG

HandlerFIQHANDLER HandleFIQ
HandlerIRQHANDLER HandleIRQ
HandlerUndefHANDLER HandleUndef
HandlerSWIHANDLER HandleSWI
HandlerDabortHANDLER HandleDabort
HandlerPabortHANDLER HandlePabort

HandlerADCHANDLER HandleADC
HandlerRTCHANDLER HandleRTC
HandlerUTXD1HANDLER HandleUTXD1
HandlerUTXD0HANDLER HandleUTXD0
HandlerSIOHANDLER HandleSIO
HandlerIICHANDLER HandleIIC
HandlerURXD1HANDLER HandleURXD1
HandlerURXD0HANDLER HandleURXD0
HandlerTIMER5HANDLER HandleTIMER5
HandlerTIMER4HANDLER HandleTIMER4
HandlerTIMER3HANDLER HandleTIMER3
HandlerTIMER2HANDLER HandleTIMER2
HandlerTIMER1HANDLER HandleTIMER1
HandlerTIMER0HANDLER HandleTIMER0
HandlerUERR01HANDLER HandleUERR01
HandlerWDTHANDLER HandleWDT
HandlerBDMA1HANDLER HandleBDMA1
HandlerBDMA0HANDLER HandleBDMA0
HandlerZDMA1HANDLER HandleZDMA1
HandlerZDMA0HANDLER HandleZDMA0
HandlerTICKHANDLER HandleTICK
HandlerEINT4567HANDLER HandleEINT4567
HandlerEINT3HANDLER HandleEINT3
HandlerEINT2HANDLER HandleEINT2
HandlerEINT1HANDLER HandleEINT1
HandlerEINT0HANDLER HandleEINT0


;One of the following two routines can be used for non-vectored interrupt.

IsrIRQ;using I_ISPR register.
sub sp,sp,#4 ;reserved for PC
stmfd sp!,{r8-r9}

;IMPORTANT CAUTION
;if I_ISPC isn't used properly, I_ISPR can be 0 in this routine.

ldr r9,=I_ISPR
ldr r9,[r9]

cmpr9, #0x0;If the IDLE mode work-around is used,
;r9 may be 0 sometimes.
beq%F2

mov r8,#0x0
0
movs r9,r9,lsr #1
bcs %F1
add r8,r8,#4
b %B0

1
ldr r9,=HandleADC
add r9,r9,r8
ldr r9,[r9]
str r9,[sp,#8]
ldmfd sp!,{r8-r9,pc}

2
ldmfdsp!,{r8-r9}
addsp,sp,#4
subspc,lr,#4

;****************************************************
;*START *
;****************************************************
ResetHandler
ldr r0,=WTCON ;watch dog disable
ldr r1,=0x0
str r1,[r0]

ldr r0,=INTMSK
ldr r1,=0x07ffffff ;all interrupt disable
str r1,[r0]

;****************************************************
;*Set clock control registers*
;****************************************************
ldrr0,=LOCKTIME
ldrr1,=800 ; count = t_lock * Fin (t_lock=200us, Fin=4MHz) = 800
strr1,[r0]

[ PLLONSTART
ldrr0,=PLLCON;temporary setting of PLL
ldrr1,=((0xe8<<12)+(0x4<<4)+0x2);Fin=4MHz,Fvco=160Mhz,Fout=40MHz,m/p/s=0x48/0/0x2
strr1,[r0]
]

ldr r0,=CLKCON
ldr r1,=0x7ff8 ;All unit block CLK enable
str r1,[r0]

;****************************************************
;*Set memory control registers*
;****************************************************
ldr r0,=SMRDATA
ldmia r0,{r1-r13}
ldr r0,=0x01c80000 ;BWSCON Address
stmia r0,{r1-r13}

;****************************************************
;*Initialize stacks*
;****************************************************
ldr sp, =SVCStack;Why?
bl InitStacks

;****************************************************
;*Setup IRQ handler*
;****************************************************
ldr r0,=HandleIRQ;This routine is needed
ldr r1,=IsrIRQ;if there isn't 'subs pc,lr,#4' at 0x18, 0x1c
str r1,[r0]

;********************************************************
;*Copy and paste RW data/zero initialized data *
;********************************************************
LDR r0, =|Image$$RO$$Limit|; Get pointer to ROM data
LDR r1, =|Image$$RW$$Base|; and RAM copy
LDR r3, =|Image$$ZI$$Base|
;Zero init base => top of initialised data

CMP r0, r1 ; Check that they are different
BEQ %F1
0
CMP r1, r3 ; Copy init data
LDRCC r2, [r0], #4 ;--> LDRCC r2, [r0] + ADD r0, r0, #4
STRCC r2, [r1], #4 ;--> STRCC r2, [r1] + ADD r1, r1, #4
BCC %B0
1
LDR r1, =|Image$$ZI$$Limit| ; Top of zero init segment
MOV r2, #0
2
CMP r3, r1 ; Zero init
STRCC r2, [r3], #4
BCC %B2

[ :LNOT:THUMBCODE
BLMain ;Don't use main() because ......
B.
]

[ THUMBCODE ;for start-up code for Thumb mode
orr lr,pc,#1
bx lr
CODE16
bl Main ;Don't use main() because ......
b .
CODE32
]

;****************************************************
;*The function for initializing stack *
;****************************************************
InitStacks
;Don't use DRAM,such as stmfd,ldmfd......
;SVCstack is initialized before
;Under toolkit ver 2.50, 'msr cpsr,r1' can be used instead of 'msr cpsr_cxsf,r1'

mrs r0,cpsr
bic r0,r0,#MODEMASK
orr r1,r0,#UNDEFMODE|NOINT
msr cpsr_cxsf,r1;UndefMode
ldr sp,=UndefStack

orr r1,r0,#ABORTMODE|NOINT
msr cpsr_cxsf,r1 ;AbortMode
ldr sp,=AbortStack

orr r1,r0,#IRQMODE|NOINT
msr cpsr_cxsf,r1 ;IRQMode
ldr sp,=IRQStack

orr r1,r0,#FIQMODE|NOINT
msr cpsr_cxsf,r1 ;FIQMode
ldr sp,=FIQStack

bic r0,r0,#MODEMASK|NOINT
orr r1,r0,#SVCMODE
msr cpsr_cxsf,r1 ;SVCMode
ldr sp,=SVCStack

;USER mode is not initialized.
mov pc,lr ;The LR register may be not valid for the mode changes.

;****************************************************
;*The function for entering power down mode *
;****************************************************
;void EnterPWDN(int CLKCON);
EnterPWDN
mov r2,r0 ;r0=CLKCON
ldr r0,=REFRESH
ldr r3,[r0]
mov r1, r3
orr r1, r1, #0x400000 ;self-refresh enable
str r1, [r0]

nop ;Wait until self-refresh is issued. May not be needed.
nop ;If the other bus master holds the bus, ...
nop ; mov r0, r0
nop
nop
nop
nop

;enter POWERDN mode
ldr r0,=CLKCON
str r2,[r0]

;wait until enter SL_IDLE,STOP mode and until wake-up
mov r0,#0xff
0 subs r0,r0,#1
bne %B0

;exit from DRAM/SDRAM self refresh mode.
ldr r0,=REFRESH
str r3,[r0]
mov pc,lr

LTORG

SMRDATA DATA
;*****************************************************************
;* Memory configuration has to be optimized for best performance *
;* The following parameter is not optimized. *
;*****************************************************************

;*** memory access cycle parameter strategy ***
; 1) Even FP-DRAM, EDO setting has more late fetch point by half-clock
; 2) The memory settings,here, are made the safe parameters even at 66Mhz.
; 3) FP-DRAM Parameters:tRCD=3 for tRAC, tcas=2 for pad delay, tcp=2 for bus load.
; 4) DRAM refresh rate is for 40Mhz.

[ BUSWIDTH=16
;DCD 0x11111110;Bank0=OM[1:0], Bank1~Bank7=16bit
DCD 0x11110000;Bank0=OM[1:0]
; |||||||- Bank1=8bit Sram
; |||||--- Bank2=8bit Flash
; ||||---- Bank3=8bit USB
; |||----- Bank4=16bit IDE
; -------- Bank5~7=16bit
;
| ;BUSWIDTH=32
DCD 0x22222220;Bank0=OM[1:0], Bank1~Bank7=32bit
]
DCD ((B0_Tacs<<13)+(B0_Tcos<<11)+(B0_Tacc<<8)+(B0_Tcoh<<6)+(B0_Tah<<4)+(B0_Tacp<<2)+(B0_PMC));GCS0
DCD ((B1_Tacs<<13)+(B1_Tcos<<11)+(B1_Tacc<<8)+(B1_Tcoh<<6)+(B1_Tah<<4)+(B1_Tacp<<2)+(B1_PMC));GCS1
DCD ((B2_Tacs<<13)+(B2_Tcos<<11)+(B2_Tacc<<8)+(B2_Tcoh<<6)+(B2_Tah<<4)+(B2_Tacp<<2)+(B2_PMC));GCS2
DCD ((B3_Tacs<<13)+(B3_Tcos<<11)+(B3_Tacc<<8)+(B3_Tcoh<<6)+(B3_Tah<<4)+(B3_Tacp<<2)+(B3_PMC));GCS3
DCD ((B4_Tacs<<13)+(B4_Tcos<<11)+(B4_Tacc<<8)+(B4_Tcoh<<6)+(B4_Tah<<4)+(B4_Tacp<<2)+(B4_PMC));GCS4
DCD ((B5_Tacs<<13)+(B5_Tcos<<11)+(B5_Tacc<<8)+(B5_Tcoh<<6)+(B5_Tah<<4)+(B5_Tacp<<2)+(B5_PMC));GCS5
[ BDRAMTYPE="DRAM"
DCD ((B6_MT<<15)+(B6_Trcd<<4)+(B6_Tcas<<3)+(B6_Tcp<<2)+(B6_CAN));GCS6 check the MT value in parameter.a
DCD ((B7_MT<<15)+(B7_Trcd<<4)+(B7_Tcas<<3)+(B7_Tcp<<2)+(B7_CAN));GCS7
| ;"SDRAM"
DCD ((B6_MT<<15)+(B6_Trcd<<2)+(B6_SCAN));GCS6
DCD ((B7_MT<<15)+(B7_Trcd<<2)+(B7_SCAN));GCS7
]
DCD ((REFEN<<23)+(TREFMD<<22)+(Trp<<20)+(Trc<<18)+(Tchr<<16)+REFCNT);REFRESH RFEN=1, TREFMD=0, trp=3clk, trc=5clk, tchr=3clk,count=1019
DCD 0x10;SCLK power mode, BANKSIZE 32M/32M
DCD 0x20;MRSR6 CL=2clk
DCD 0x20;MRSR7

ALIGN


AREA RamData, DATA, READWRITE

^(_ISR_STARTADDRESS-0x500)

UserStack#256;c1(c7)ffa00
SVCStack#256;c1(c7)ffb00
UndefStack#256;c1(c7)ffc00
AbortStack#256;c1(c7)ffd00
IRQStack#256;c1(c7)ffe00
FIQStack#0;c1(c7)fff00

^_ISR_STARTADDRESS
HandleReset#4
HandleUndef#4
HandleSWI#4
HandlePabort#4
HandleDabort#4
HandleReserved#4
HandleIRQ#4
HandleFIQ#4

;Don't use the label 'IntVectorTable',
;because armasm.exe cann't recognize this label correctly.
;the value is different with an address you think it may be.
;IntVectorTable
HandleADC#4
HandleRTC#4
HandleUTXD1#4
HandleUTXD0#4
HandleSIO#4
HandleIIC#4
HandleURXD1#4
HandleURXD0#4
HandleTIMER5#4
HandleTIMER4#4
HandleTIMER3#4
HandleTIMER2#4
HandleTIMER1#4
HandleTIMER0#4
HandleUERR01#4
HandleWDT#4
HandleBDMA1#4
HandleBDMA0#4
HandleZDMA1#4
HandleZDMA0#4
HandleTICK#4
HandleEINT4567#4
HandleEINT3#4
HandleEINT2#4
HandleEINT1#4
HandleEINT0#4 ;0xc1(c7)fff84

END

再贴上option.s程序

;**********OPTIONS*******************************
;_RAM_STARTADDRESS EQU 0xc100000
_ISR_STARTADDRESS EQU 0xc7fff00 ;GCS6:64M DRAM/SDRAM
;_ISR_STARTADDRESS EQU 0xc1fff00 ;GCS6:16M DRAM


;BUSWIDTH; 16,32
GBLA BUSWIDTH
BUSWIDTHSETA 16


;"DRAM","SDRAM"
GBLS BDRAMTYPE
BDRAMTYPESETS "SDRAM"

;This value has to be TRUE on ROM program.
;This value has to be FALSE in RAM program.
GBLL PLLONSTART
PLLONSTART SETL {TRUE}

GBLAPLLCLK
PLLCLKSETA40000000

[PLLCLK = 40000000
M_DIVEQU0x48;Fin=10MHz Fout=40MHz
P_DIVEQU0x3
S_DIVEQU0x2
]

[PLLCLK = 50000000
M_DIVEQU0x2a;Fin=10MHz Fout=50MHz
P_DIVEQU0x3
S_DIVEQU0x1
]

[PLLCLK = 60000000
M_DIVEQU0x34;Fin=10MHz Fout=60MHz
P_DIVEQU0x3
S_DIVEQU0x1
]

[PLLCLK = 66000000
M_DIVEQU0x3a;Fin=10MHz Fout=66MHz
P_DIVEQU0x3
S_DIVEQU0x1
]

[PLLCLK = 75000000
M_DIVEQU0x43;Fin=10MHz Fout=75MHz
P_DIVEQU0x3
S_DIVEQU0x1
]
;************************************************
END

再贴上memcfg.s

;**********MEMORY CONTROL PARAMETERS*******************************
;When MCLK=66MHz,1clk=0.0152us=15.2ns
;Bank 0 parameter for Monitor Flash Rom
GBLS BDRAMTYPE
BDRAMTYPESETS "SDRAM"
B0_TacsEQU0x0;0clk
B0_TcosEQU0x0;0clk
B0_TaccEQU0x6;10clk
B0_TcohEQU0x0;0clk
B0_TahEQU0x0;0clk
B0_TacpEQU0x0;0clk
B0_PMCEQU0x0;normal(1data)

;Bank 1 parameter for USB PDIUSBD12(待定)
B1_TacsEQU0x3;4clk
B1_TcosEQU0x3;4clk
B1_TaccEQU0x7;14clk
B1_TcohEQU0x3;4clk
B1_TahEQU0x3;4clk
B1_TacpEQU0x3;6clk
B1_PMCEQU0x0;normal(1data)

;Bank 2 parameter for IDE
B2_TacsEQU0x3;4clk
B2_TcosEQU0x4;4clk
B2_TaccEQU0x6;12clk
B2_TcohEQU0x3;4clk
B2_TahEQU0x3;4clk
B2_TacpEQU0x3;6clk
B2_PMCEQU0x0;normal(1data)

;Bank 3 parameter for NET RTL8019AS
B3_TacsEQU0x3;(Address set-up before nGCSn)
B3_TcosEQU0x3;(Chip selection set-up nOE)
B3_TaccEQU0x7;14clk(Access cycle)
B3_TcohEQU0x3;(Chip selection hold on nOE)
B3_TahEQU0x3;(Address holding time after nGCSn)
B3_TacpEQU0x3;(Page mode access cycle @ Page mode)
B3_PMCEQU0x0;normal(1data)

;Bank 4 parameter
B4_TacsEQU0x3;4clk
B4_TcosEQU0x3;4clk
B4_TaccEQU0x7;14clk
B4_TcohEQU0x3;4clk
B4_TahEQU0x3;4clk
B4_TacpEQU0x3;6clk
B4_PMCEQU0x0;normal(1data)

;Bank 5 parameter
B5_TacsEQU0x3;4clk
B5_TcosEQU0x3;4clk
B5_TaccEQU0x7;14clk
B5_TcohEQU0x3;4clk
B5_TahEQU0x3;4clk
B5_TacpEQU0x3;6clk
B5_PMCEQU0x0;normal(1data)

;Bank 6(if SROM) parameter
;B6_TacsEQU0x3;4clk
;B6_TcosEQU0x3;4clk
;B6_TaccEQU0x7;14clk
;B6_TcohEQU0x3;4clk
;B6_TahEQU0x3;4clk
;B6_TacpEQU0x3;6clk
;B6_PMCEQU0x0;normal(1data)

;Bank 7(if SROM) parameter
;B7_TacsEQU0x3;4clk
;B7_TcosEQU0x3;4clk
;B7_TaccEQU0x7;14clk
;B7_TcohEQU0x3;4clk
;B7_TahEQU0x3;4clk
;B7_TacpEQU0x3;6clk
;B7_PMCEQU0x0;normal(1data)

;Bank 6 parameter
[ BDRAMTYPE="DRAM";MT=01(FP DRAM) or 10(EDO DRAM)
B6_MTEQU0x2;EDO DRAM
B6_TrcdEQU0x1;2clk
B6_TcasEQU0x1;2clk
B6_TcpEQU0x1;2clk
B6_CANEQU0x2;10bit
| ;"SDRAM";MT=11(SDRAM)
B6_MTEQU0x3;SDRAM
B6_TrcdEQU0x0;2clk
B6_SCANEQU0x0;8bit
]

;Bank 7 parameter
[ BDRAMTYPE="DRAM";MT=01(FP DRAM) or 10(EDO DRAM)
B7_MTEQU0x2;EDO DRAM
B7_TrcdEQU0x1;2clk
B7_TcasEQU0x1;2clk
B7_TcpEQU0x1;2clk
B7_CANEQU0x2;10bit
| ;"SDRAM";MT=11(SDRAM)
B7_MTEQU0x3;SDRAM
B7_TrcdEQU0x0;2clk
B7_SCANEQU0x0;8bit
]

;REFRESH parameter
REFENEQU0x1;Refresh enable
TREFMDEQU0x0;CBR(CAS before RAS)/Auto refresh
TrpEQU0x2;2clk 0x1;3clk --zq
TrcEQU0x1;5clk
TchrEQU0x2;3clk
REFCNTEQU1425 ;1019;period=15.6us, MCLK=40Mhz
;************************************************
END

分享到:
评论

相关推荐

    rtc.rar_44B0 RTC

    在“rtc.rar_44B0 RTC”这个压缩包中,我们看到的是针对44B0公板的RTC实验代码,这表明它包含了一组程序,旨在帮助开发者了解如何在44B0板上配置和使用RTC功能。 44B0公板可能是一种基于微控制器或微处理器的开发板...

    uboott移植实验手册及技术文档

    S3C2410_NAND * const nand = S3C2410_GetBase_NAND(); nand-&gt;NFADDR = addr; } static inline void NF_WaitRB(void) { S3C2410_NAND * const nand = S3C2410_GetBase_NAND(); while (!(nand-&gt;NFSTAT & (1...

    【NLP 66、实践 ⑰ 基于Agent + Prompt优化进行文章优化】

    【NLP 66、实践 ⑰ 基于Agent + Prompt优化进行文章优化】

    梦限大mewtype成员 藤都子RVC模型

    考虑微网新能源经济消纳的共享储能优化配置附Matlab代码.rar

    1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。

    tokenizers-0.30.0.jar中文文档.zip

    # 【tokenizers-***.jar***文档.zip】 中包含: ***文档:【tokenizers-***-javadoc-API文档-中文(简体)版.zip】 jar包下载地址:【tokenizers-***.jar下载地址(官方地址+国内镜像地址).txt】 Maven依赖:【tokenizers-***.jar Maven依赖信息(可用于项目pom.xml).txt】 Gradle依赖:【tokenizers-***.jar Gradle依赖信息(可用于项目build.gradle).txt】 源代码下载地址:【tokenizers-***-sources.jar下载地址(官方地址+国内镜像地址).txt】 # 本文件关键字: tokenizers-***.jar***文档.zip,java,tokenizers-***.jar,ai.djl.huggingface,tokenizers,***,ai.djl.engine.rust,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,djl,huggingface,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压 【tokenizers-***.jar***文档.zip】,再解压其中的 【tokenizers-***-javadoc-API文档-中文(简体)版.zip】,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件; # Maven依赖: ``` <dependency> <groupId>ai.djl.huggingface</groupId> <artifactId>tokenizers</artifactId> <version>***</version> </dependency> ``` # Gradle依赖: ``` Gradle: implementation group: 'ai.djl.huggingface', name: 'tokenizers', version: '***' Gradle (Short): implementation 'ai.djl.huggingface:tokenizers:***' Gradle (Kotlin): implementation("ai.djl.huggingface:tokenizers:***") ``` # 含有的 Java package(包): ``` ai.djl.engine.rust ai.djl.engine.rust.zoo ai.djl.huggingface.tokenizers ai.djl.huggingface.tokenizers.jni ai.djl.huggingface.translator ai.djl.huggingface.zoo ``` # 含有的 Java class(类): ``` ai.djl.engine.rust.RsEngine ai.djl.engine.rust.RsEngineProvider ai.djl.engine.rust.RsModel ai.djl.engine.rust.RsNDArray ai.djl.engine.rust.RsNDArrayEx ai.djl.engine.rust.RsNDArrayIndexer ai.djl.engine.rust.RsNDManager ai.djl.engine.rust.RsSymbolBlock ai.djl.engine.rust.RustLibrary ai.djl.engine.rust.zoo.RsModelZoo ai.djl.engine.rust.zoo.RsZooProvider ai.djl.huggingface.tokenizers.Encoding ai.djl.huggingface.tokenizers.HuggingFaceTokenizer ai.djl.huggingface.tokenizers.HuggingFaceTokenizer.Builder ai.djl.hu

    人形机器人是当今世界科技领域最具潜力和前景的产业之一 随着科技的不断进步和人工智能技术的快速发展,人形机器人作为未来产业的新赛道和经济增长的新引擎,将深刻变革人类生产生活方式,重塑全球产业发展格局

    人形机器人产业的发展需要人工智能、高端制造、新材料等先进技术的协同创新和突破。

    【状态估计】用于非标量系统估计的最优卡尔曼滤波附Matlab代码.rar

    1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。

    开关电源的尖峰干扰及其抑制.zip

    开关电源的尖峰干扰及其抑制.zip

    房地产培训 -新进业务员压马路市调培训.ppt

    房地产培训 -新进业务员压马路市调培训.ppt

    MATLAB实现计及电转气协同的含碳捕集与垃圾焚烧虚拟电厂优化调度

    内容概要:本文探讨了基于MATLAB平台的虚拟电厂优化调度方法,特别关注电转气(P2G)协同、碳捕集技术和垃圾焚烧的应用。文中介绍了虚拟电厂的概念及其重要性,详细解释了碳捕集、需求响应和电转气协同调度的关键技术,并展示了如何使用MATLAB和CPLEX求解器进行优化调度的具体步骤。通过定义决策变量、构建目标函数和设定约束条件,最终实现了多目标优化,即经济性最优和碳排放最低。此外,还讨论了一些常见的代码实现技巧和潜在的问题解决方案。 适合人群:从事能源管理和优化调度研究的专业人士,尤其是那些熟悉MATLAB编程和优化算法的人士。 使用场景及目标:适用于希望深入了解虚拟电厂运作机制和技术实现的研究人员和工程师。主要目标是通过优化调度提高能源利用效率,减少碳排放,降低成本。 其他说明:文章提供了详细的代码片段和理论分析,有助于读者更好地理解和复现实验结果。同时,强调了在实际应用中需要注意的一些细节问题,如约束条件的平衡、求解器配置等。

    在网格化数据集上轻松执行 2D 高通、低通、带通或带阻滤波器研究附Matlab代码.rar

    1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。

    spring-ai-pinecone-store-1.0.0-M7.jar中文-英文对照文档.zip

    # 【spring-ai-pinecone-store-1.0.0-M7.jar中文-英文对照文档.zip】 中包含: 中文-英文对照文档:【spring-ai-pinecone-store-1.0.0-M7-javadoc-API文档-中文(简体)-英语-对照版.zip】 jar包下载地址:【spring-ai-pinecone-store-1.0.0-M7.jar下载地址(官方地址+国内镜像地址).txt】 Maven依赖:【spring-ai-pinecone-store-1.0.0-M7.jar Maven依赖信息(可用于项目pom.xml).txt】 Gradle依赖:【spring-ai-pinecone-store-1.0.0-M7.jar Gradle依赖信息(可用于项目build.gradle).txt】 源代码下载地址:【spring-ai-pinecone-store-1.0.0-M7-sources.jar下载地址(官方地址+国内镜像地址).txt】 # 本文件关键字: spring-ai-pinecone-store-1.0.0-M7.jar中文-英文对照文档.zip,java,spring-ai-pinecone-store-1.0.0-M7.jar,org.springframework.ai,spring-ai-pinecone-store,1.0.0-M7,org.springframework.ai.vectorstore.pinecone,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,springframework,spring,ai,pinecone,store,中文-英文对照API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压 【spring-ai-pinecone

    基于MATLAB混合整数规划的微网电池储能容量优化配置

    内容概要:本文详细介绍了如何使用MATLAB及其优化工具箱,通过混合整数规划(MILP)方法对微网电池储能系统的容量进行优化配置。主要内容包括定义目标函数(如最小化运行成本),设置约束条件(如充放电功率限制、能量平衡约束),并引入决策变量(如电池容量、充放电功率和状态)。文中提供了具体的MATLAB代码示例,演示了如何将实际问题转化为数学模型并求解。此外,还讨论了一些实用技巧,如避免充放电互斥冲突、考虑电池寿命损耗等。 适用人群:从事微电网设计与运维的技术人员,尤其是那些希望通过优化算法提高系统性能和经济效益的专业人士。 使用场景及目标:适用于需要确定最佳电池储能容量的微电网项目,旨在降低总体运行成本,提高系统的稳定性和可靠性。具体应用场景包括工业园区、商业建筑或其他分布式能源系统。 其他说明:文章强调了模型的实际应用价值,并指出通过精确控制充放电策略可以显著减少不必要的容量闲置,从而节省大量资金。同时提醒读者注意模型的时间粒度选择、电池退化成本等因素的影响。

    langchain4j-ollama-1.0.0-beta1.jar中文文档.zip

    # 压缩文件中包含: 中文文档 jar包下载地址 Maven依赖 Gradle依赖 源代码下载地址 # 本文件关键字: jar中文文档.zip,java,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压最外层zip,再解压其中的zip包,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;

    光伏离网并网逆变器设计:基于TMS320F28335的数字控制与SPWM技术详解

    内容概要:本文详细介绍了基于TMS320F28335的光伏离网并网逆变器设计方案,涵盖了从硬件架构到软件控制的各个方面。首先,文章阐述了TMS320F28335作为高性能DSP的优势及其初始化配置方法。其次,探讨了逆变器的数字控制策略,如双闭环控制(电压外环和电流内环)的具体实现方式。然后,深入讲解了SPWM(正弦脉宽调制)技术,包括SPWM波的生成方法和相关代码示例。此外,还讨论了硬件保护逻辑、过流检测、死区时间配置等实际应用中的注意事项。最后,提供了调试经验和学习资源建议。 适合人群:从事光伏逆变器设计、嵌入式系统开发的技术人员,尤其是有一定DSP编程基础的研发人员。 使用场景及目标:适用于需要深入了解光伏逆变器设计原理和技术实现的研究人员和工程师。主要目标是掌握基于TMS320F28335的逆变器控制系统设计,包括数字控制策略和SPWM技术的应用。 其他说明:文中提供的代码示例和实践经验有助于读者更好地理解和应用于实际项目中。建议读者结合TI官方提供的学习资料进行进一步学习和实践。

    【医疗影像分析】深度学习技术在医疗影像分析中的应用优势及未来发展方向:自动特征学习、高精度高效处理、多模态数据融合、个性化治疗与预测、实时远程支持

    内容概要:深度学习在医疗影像分析中展现出显著的优势,主要体现在自动特征学习、高准确性和效率、多模态数据融合与综合分析、个性化治疗与预测、减少主观性、处理复杂和高维数据、实时分析与远程医疗支持、数据挖掘与科研突破以及可扩展性与持续优化九个方面。通过卷积神经网络(CNN)、U-Net等模型,深度学习能够自动从影像中提取多层次特征,无需手动干预,在分类、分割任务中表现出色,处理速度远超人工。此外,它还能够整合多源数据,提供全面的诊断依据,实现个性化治疗建议,减少误诊和漏诊,支持实时分析和远程医疗,挖掘病理模式并加速研究,同时具有可扩展性和持续优化的能力。; 适合人群:医疗行业从业者、科研人员、计算机视觉和深度学习领域的研究人员。; 使用场景及目标:①用于医疗影像的自动特征提取和分类,如乳腺癌筛查、皮肤癌诊断等;②整合多模态数据,如CT、MRI等,提高诊断准确性;③提供个性化治疗建议,优化治疗方案;④支持实时分析和远程医疗,尤其适用于偏远地区的急诊场景;⑤挖掘病理模式,加速疾病机制的研究。; 其他说明:深度学习正逐渐成为医疗影像分析的核心诊断伙伴,未来发展方向包括增强可解释性、保护数据隐私和轻量化部署,旨在进一步提升医疗效率和患者护理质量。

    深度学习机器学习子领域关键技术解析:神经网络基础、常见架构及应用场景综述

    内容概要:深度学习是机器学习的一个子领域,通过构建多层次的“深度神经网络”来模拟人脑结构,从而学习和提取数据的复杂特征。文章介绍了深度学习的核心概念,包括神经元、多层感知机、深度神经网络(DNN)、卷积神经网络(CNN)、循环神经网络(RNN)和Transformer等常见网络结构。同时,详细讲解了激活函数、损失函数与优化器的作用。此外,还探讨了深度学习的关键突破,如大数据与算力的支持、正则化技术和迁移学习的应用。文中列举了深度学习在计算机视觉、自然语言处理、语音与音频以及强化学习等领域的应用场景,并指出了其面临的挑战,如数据依赖、计算成本和可解释性问题。最后提供了使用PyTorch和TensorFlow/Keras框架的经典代码示例,涵盖图像分类、文本生成和迁移学习等内容。; 适合人群:对机器学习有一定了解,希望深入学习深度学习理论和技术的研究人员、工程师及学生。; 使用场景及目标:①理解深度学习的基本原理和核心概念;②掌握常见深度学习框架的使用方法,如PyTorch和TensorFlow;③能够根据具体应用场景选择合适的网络结构和算法进行实践。; 其他说明:本文不仅提供了理论知识,还附带了详细的代码示例,便于读者动手实践。建议读者结合理论与实践,逐步深入理解深度学习的各个方面。

    深度学习答辩PPT案例展示

    适用于理工专业的毕业生,毕业答辩时可供参考,叙述详细准确,可以作为自己答辩PPT的参考

    tokenizers-0.22.1.jar中文-英文对照文档.zip

    # 【tokenizers-***.jar***文档.zip】 中包含: ***文档:【tokenizers-***-javadoc-API文档-中文(简体)版.zip】 jar包下载地址:【tokenizers-***.jar下载地址(官方地址+国内镜像地址).txt】 Maven依赖:【tokenizers-***.jar Maven依赖信息(可用于项目pom.xml).txt】 Gradle依赖:【tokenizers-***.jar Gradle依赖信息(可用于项目build.gradle).txt】 源代码下载地址:【tokenizers-***-sources.jar下载地址(官方地址+国内镜像地址).txt】 # 本文件关键字: tokenizers-***.jar***文档.zip,java,tokenizers-***.jar,ai.djl.huggingface,tokenizers,***,ai.djl.engine.rust,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,djl,huggingface,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压 【tokenizers-***.jar***文档.zip】,再解压其中的 【tokenizers-***-javadoc-API文档-中文(简体)版.zip】,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件; # Maven依赖: ``` <dependency> <groupId>ai.djl.huggingface</groupId> <artifactId>tokenizers</artifactId> <version>***</version> </dependency> ``` # Gradle依赖: ``` Gradle: implementation group: 'ai.djl.huggingface', name: 'tokenizers', version: '***' Gradle (Short): implementation 'ai.djl.huggingface:tokenizers:***' Gradle (Kotlin): implementation("ai.djl.huggingface:tokenizers:***") ``` # 含有的 Java package(包): ``` ai.djl.engine.rust ai.djl.engine.rust.zoo ai.djl.huggingface.tokenizers ai.djl.huggingface.tokenizers.jni ai.djl.huggingface.translator ai.djl.huggingface.zoo ``` # 含有的 Java class(类): ``` ai.djl.engine.rust.RsEngine ai.djl.engine.rust.RsEngineProvider ai.djl.engine.rust.RsModel ai.djl.engine.rust.RsNDArray ai.djl.engine.rust.RsNDArrayEx ai.djl.engine.rust.RsNDArrayIndexer ai.djl.engine.rust.RsNDManager ai.djl.engine.rust.RsSymbolBlock ai.djl.engine.rust.RustLibrary ai.djl.engine.rust.zoo.RsModelZoo ai.djl.engine.rust.zoo.RsZooProvider ai.djl.huggingface.tokenizers.Encoding ai.djl.huggingface.tokenizers.HuggingFaceTokenizer ai.djl.huggingface.tokenizers.HuggingFaceTokenizer.Builder ai.djl.hu

Global site tag (gtag.js) - Google Analytics