|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
upd72001.hμPD72001用 簡易SIOドライバ [詳細]
upd72001.hのインクルード依存関係図 ![]() このグラフは、どのファイルから直接、間接的にインクルードされているかを示しています。 ![]()
説明μPD72001用 簡易SIOドライバ
upd72001.h で定義されています。 マクロ定義
upd72001.h の 57 行で定義されています。
upd72001.h の 56 行で定義されています。
型定義
upd72001.h の 51 行で定義されています。
関数
upd72001.c の 331 行で定義されています。 参照先 CR1_DOWN・FALSE・UPD72001_CR1・upd72001_write_ctrl(). 参照元 sio_cls_por(). 00332 { 00333 upd72001_write_ctrl(siopcb->siopinib->ctrl, UPD72001_CR1, CR1_DOWN); 00334 siopcb->openflag = FALSE; 00335 }
関数の呼び出しグラフ: ![]()
upd72001.c の 386 行で定義されています。 参照先 CR1_RECV・CR1_SEND・SIO_ERDY_RCV・SIO_ERDY_SND・UPD72001_CR1・upd72001_write_ctrl(). 00387 { 00388 UB cr1_bit = 0; 00389 00390 switch (cbrtn) { 00391 case SIO_ERDY_SND: 00392 cr1_bit = CR1_SEND; 00393 break; 00394 case SIO_ERDY_RCV: 00395 cr1_bit = CR1_RECV; 00396 break; 00397 } 00398 siopcb->cr1 &= ~cr1_bit; 00399 upd72001_write_ctrl(siopcb->siopinib->ctrl, UPD72001_CR1, siopcb->cr1); 00400 }
関数の呼び出しグラフ: ![]()
upd72001.c の 366 行で定義されています。 参照先 CR1_RECV・CR1_SEND・SIO_ERDY_RCV・SIO_ERDY_SND・UPD72001_CR1・upd72001_write_ctrl(). 00367 { 00368 UB cr1_bit = 0; 00369 00370 switch (cbrtn) { 00371 case SIO_ERDY_SND: 00372 cr1_bit = CR1_SEND; 00373 break; 00374 case SIO_ERDY_RCV: 00375 cr1_bit = CR1_RECV; 00376 break; 00377 } 00378 siopcb->cr1 |= cr1_bit; 00379 upd72001_write_ctrl(siopcb->siopinib->ctrl, UPD72001_CR1, siopcb->cr1); 00380 }
関数の呼び出しグラフ: ![]()
参照元 upd72001_isr_siop().
参照元 upd72001_isr_siop().
upd72001.c の 263 行で定義されています。 参照先 FALSE・siopcb_table・siopinib_table・TNUM_SIOP. 00264 { 00265 SIOPCB *siopcb; 00266 UINT i; 00267 00268 /* 00269 * シリアルI/Oポート管理ブロックの初期化 00270 */ 00271 for (siopcb = siopcb_table, i = 0; i < TNUM_SIOP; siopcb++, i++) { 00272 siopcb->siopinib = &(siopinib_table[i]); 00273 siopcb->openflag = FALSE; 00274 } 00275 }
upd72001.c の 426 行で定義されています。 参照先 siopcb_table・upd72001_eoi()・upd72001_isr_siop(). 00427 { 00428 if (siopcb_table[0].openflag) { 00429 upd72001_isr_siop(&(siopcb_table[0])); 00430 } 00431 #if TNUM_SIOP >= 2 00432 if (siopcb_table[1].openflag) { 00433 upd72001_isr_siop(&(siopcb_table[1])); 00434 } 00435 #endif /* TNUM_SIOP >= 2 */ 00436 upd72001_eoi(); 00437 }
関数の呼び出しグラフ: ![]()
upd72001.c の 281 行で定義されています。 参照先 siopcb_table. 参照元 sio_cls_por()・sio_opn_por()・upd72001_opn_por(). 00282 { 00283 #if TNUM_SIOP < 2 00284 return(siopcb_table[0].openflag); 00285 #else /* TNUM_SIOP < 2 */ 00286 return(siopcb_table[0].openflag || siopcb_table[1].openflag); 00287 #endif /* TNUM_SIOP < 2 */ 00288 }
upd72001.c の 294 行で定義されています。 参照先 CR10_DEF・CR14_DEF・CR15_DEF・CR1_DOWN・CR_RESET・FALSE・get_siopcb・TADR_UPD72001_CTRLA・TADR_UPD72001_CTRLB・TRUE・UPD72001_CR1・UPD72001_CR10・UPD72001_CR12・UPD72001_CR14・UPD72001_CR15・UPD72001_CR2・UPD72001_CR3・UPD72001_CR4・UPD72001_CR5・upd72001_openflag()・upd72001_write_brg()・upd72001_write_ctrl()・upd72001_write_reg(). 参照元 sio_opn_por(). 00295 { 00296 SIOPCB *siopcb; 00297 const SIOPINIB *siopinib; 00298 00299 siopcb = get_siopcb(siopid); 00300 siopinib = siopcb->siopinib; 00301 00302 upd72001_write_reg(siopinib->ctrl, CR_RESET); 00303 if (!upd72001_openflag()) { 00304 upd72001_write_ctrl((VP) TADR_UPD72001_CTRLA, 00305 UPD72001_CR2, 0x18); 00306 upd72001_write_ctrl((VP) TADR_UPD72001_CTRLB, 00307 UPD72001_CR2, 0x00); 00308 } 00309 siopcb->cr1 = CR1_DOWN; 00310 upd72001_write_ctrl(siopinib->ctrl, UPD72001_CR1, siopcb->cr1); 00311 upd72001_write_ctrl(siopinib->ctrl, UPD72001_CR4, siopinib->cr4_def); 00312 upd72001_write_brg(siopinib->ctrl, UPD72001_CR12, 00313 0x01, siopinib->brg2_def, siopinib->brg1_def); 00314 upd72001_write_brg(siopinib->ctrl, UPD72001_CR12, 00315 0x02, siopinib->brg2_def, siopinib->brg1_def); 00316 upd72001_write_ctrl(siopinib->ctrl, UPD72001_CR15, CR15_DEF); 00317 upd72001_write_ctrl(siopinib->ctrl, UPD72001_CR14, CR14_DEF); 00318 upd72001_write_ctrl(siopinib->ctrl, UPD72001_CR10, CR10_DEF); 00319 upd72001_write_ctrl(siopinib->ctrl, UPD72001_CR3, siopinib->cr3_def); 00320 upd72001_write_ctrl(siopinib->ctrl, UPD72001_CR5, siopinib->cr5_def); 00321 siopcb->exinf = exinf; 00322 siopcb->getready = siopcb->putready = FALSE; 00323 siopcb->openflag = TRUE; 00324 return(siopcb); 00325 }
関数の呼び出しグラフ: ![]()
upd72001.c の 354 行で定義されています。 参照先 upd72001_getchar()・upd72001_getready(). 00355 { 00356 if (upd72001_getready(siopcb)) { 00357 return((INT)(UB) upd72001_getchar(siopcb)); 00358 } 00359 return(-1); 00360 }
関数の呼び出しグラフ: ![]()
upd72001.c の 341 行で定義されています。 参照先 FALSE・TRUE・upd72001_putchar()・upd72001_putready(). 00342 { 00343 if (upd72001_putready(siopcb)) { 00344 upd72001_putchar(siopcb, c); 00345 return(TRUE); 00346 } 00347 return(FALSE); 00348 }
関数の呼び出しグラフ: ![]()
Copyright © 2006 by TAKAGI Nobuhisa. Copyright © 2006 by Kijineko Inc.. このページは Mon Dec 18 17:22:30 2006 に Doxygen によって生成されました。 データ入力からプログラム開発まで!様々なスキルを持ったメンバーが登録しています【@SOHO】 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||