のねのBlog

パソコンの問題や、ソフトウェアの開発で起きた問題など書いていきます。よろしくお願いします^^。

CMSIS STM32f429x.s

初期化へのジャンプと、 メインへのジャンプ。

ブレークをかけると、ちゃんと初期化関数内で止まり、 ステップ実行できた。

    .section  .text.Reset_Handler
  .weak  Reset_Handler
  .type  Reset_Handler, %function
Reset_Handler:  
  ldr   sp, =_estack    /* Atollic update: set stack pointer */
  
/* Copy the data segment initializers from flash to SRAM */  
  movs  r1, #0
  b  LoopCopyDataInit

CopyDataInit:
  ldr  r3, =_sidata
  ldr  r3, [r3, r1]
  str  r3, [r0, r1]
  adds  r1, r1, #4
    
LoopCopyDataInit:
  ldr  r0, =_sdata
  ldr  r3, =_edata
  adds  r2, r0, r1
  cmp  r2, r3
  bcc  CopyDataInit
  ldr  r2, =_sbss
  b  LoopFillZerobss
/* Zero fill the bss segment. */  
FillZerobss:
  movs  r3, #0
  str  r3, [r2], #4
    
LoopFillZerobss:
  ldr  r3, = _ebss
  cmp  r2, r3
  bcc  FillZerobss

/* Call the clock system intitialization function.*/
  bl  SystemInit   <=== 初期化
/* Call static constructors */
    bl __libc_init_array
/* Call the application's entry point.*/
  bl  main <== メイン
  bx  lr    
.size  Reset_Handler, .-Reset_Handler

dataframeから、複数範囲を指定したいとき

df_train = pd.read_csv(TRAIN_CSV)
df_valid = pd.read_csv(VALID_CSV)

df_test0  = df_valid.iloc[           0:NB_CLASSES*1,:] #Bold 
df_test1  = df_valid.iloc[NB_CLASSES*1:NB_CLASSES*2,:] #Heavy 
df_test2  = df_valid.iloc[NB_CLASSES*2:NB_CLASSES*3,:] #Light 
df_test3  = df_valid.iloc[NB_CLASSES*3:NB_CLASSES*4,:] #Medium 
df_test4  = df_valid.iloc[NB_CLASSES*4:NB_CLASSES*5,:] #Regular 
df_test5  = df_valid.iloc[NB_CLASSES*5:NB_CLASSES*6,:] #Bold 
df_test6  = df_valid.iloc[NB_CLASSES*6:NB_CLASSES*7,:] #Heavy 
df_test7  = df_valid.iloc[NB_CLASSES*7:NB_CLASSES*8,:] #Light 
df_test8  = df_valid.iloc[NB_CLASSES*8:NB_CLASSES*9,:] #Medium 
df_test9  = df_valid.iloc[NB_CLASSES*9:NB_CLASSES*10,:]#Regular

#4 9
df_valid2 = df_valid.iloc[<b>pd.np.r_</b>[
    NB_CLASSES*4:NB_CLASSES*5,
    NB_CLASSES*9:NB_CLASSES*10]]

df_test2 = df_valid.iloc[<b>pd.np.r_</b>[
    NB_CLASSES*3:NB_CLASSES*5,
    NB_CLASSES*8:NB_CLASSES*10]]

stackoverflow.com