⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 swi_handler_user.lst

📁 atmel at91SAM7a3 ADC sample
💻 LST
📖 第 1 页 / 共 4 页
字号:
 156:./common/lib_AT91SAM7A3.h **** 
 157:./common/lib_AT91SAM7A3.h **** //*----------------------------------------------------------------------------
 158:./common/lib_AT91SAM7A3.h **** //* \fn    AT91F_AIC_IsActive
 159:./common/lib_AT91SAM7A3.h **** //* \brief Test if an IT is active
 160:./common/lib_AT91SAM7A3.h **** //*----------------------------------------------------------------------------
 161:./common/lib_AT91SAM7A3.h **** __inline unsigned int  AT91F_AIC_IsActive (
 162:./common/lib_AT91SAM7A3.h **** 	AT91PS_AIC pAic,     // \arg pointer to the AIC registers
 163:./common/lib_AT91SAM7A3.h **** 	unsigned int irq_id) // \arg Interrupt Number
 164:./common/lib_AT91SAM7A3.h **** {
 165:./common/lib_AT91SAM7A3.h **** 	return (pAic->AIC_ISR & (0x1 << irq_id));
 166:./common/lib_AT91SAM7A3.h **** }
 167:./common/lib_AT91SAM7A3.h **** 
 168:./common/lib_AT91SAM7A3.h **** //*----------------------------------------------------------------------------
 169:./common/lib_AT91SAM7A3.h **** //* \fn    AT91F_AIC_IsPending
 170:./common/lib_AT91SAM7A3.h **** //* \brief Test if an IT is pending
 171:./common/lib_AT91SAM7A3.h **** //*----------------------------------------------------------------------------
 172:./common/lib_AT91SAM7A3.h **** __inline unsigned int  AT91F_AIC_IsPending (
 173:./common/lib_AT91SAM7A3.h **** 	AT91PS_AIC pAic,     // \arg pointer to the AIC registers
 174:./common/lib_AT91SAM7A3.h **** 	unsigned int irq_id) // \arg Interrupt Number
 175:./common/lib_AT91SAM7A3.h **** {
 176:./common/lib_AT91SAM7A3.h **** 	return (pAic->AIC_IPR & (0x1 << irq_id));
 177:./common/lib_AT91SAM7A3.h **** }
 178:./common/lib_AT91SAM7A3.h **** 
 179:./common/lib_AT91SAM7A3.h **** //*----------------------------------------------------------------------------
 180:./common/lib_AT91SAM7A3.h **** //* \fn    AT91F_AIC_Open
 181:./common/lib_AT91SAM7A3.h **** //* \brief Set exception vectors and AIC registers to default values
 182:./common/lib_AT91SAM7A3.h **** //*----------------------------------------------------------------------------
 183:./common/lib_AT91SAM7A3.h **** __inline void AT91F_AIC_Open(
 184:./common/lib_AT91SAM7A3.h **** 	AT91PS_AIC pAic,        // \arg pointer to the AIC registers
 185:./common/lib_AT91SAM7A3.h **** 	void (*IrqHandler) (),  // \arg Default IRQ vector exception
 186:./common/lib_AT91SAM7A3.h **** 	void (*FiqHandler) (),  // \arg Default FIQ vector exception
 187:./common/lib_AT91SAM7A3.h **** 	void (*DefaultHandler)  (), // \arg Default Handler set in ISR
 188:./common/lib_AT91SAM7A3.h **** 	void (*SpuriousHandler) (), // \arg Default Spurious Handler
 189:./common/lib_AT91SAM7A3.h **** 	unsigned int protectMode)   // \arg Debug Control Register
 190:./common/lib_AT91SAM7A3.h **** {
 191:./common/lib_AT91SAM7A3.h **** 	int i;
 192:./common/lib_AT91SAM7A3.h **** 
 193:./common/lib_AT91SAM7A3.h **** 	// Disable all interrupts and set IVR to the default handler
 194:./common/lib_AT91SAM7A3.h **** 	for (i = 0; i < 32; ++i) {
 195:./common/lib_AT91SAM7A3.h **** 		AT91F_AIC_DisableIt(pAic, i);
 196:./common/lib_AT91SAM7A3.h **** 		AT91F_AIC_ConfigureIt(pAic, i, AT91C_AIC_PRIOR_LOWEST, AT91C_AIC_SRCTYPE_HIGH_LEVEL, DefaultHandl 197:./common/lib_AT91SAM7A3.h **** 	}
 198:./common/lib_AT91SAM7A3.h **** 
 199:./common/lib_AT91SAM7A3.h **** 	// Set the IRQ exception vector
 200:./common/lib_AT91SAM7A3.h **** 	AT91F_AIC_SetExceptionVector((unsigned int *) 0x18, IrqHandler);
 201:./common/lib_AT91SAM7A3.h **** 	// Set the Fast Interrupt exception vector
 202:./common/lib_AT91SAM7A3.h **** 	AT91F_AIC_SetExceptionVector((unsigned int *) 0x1C, FiqHandler);
 203:./common/lib_AT91SAM7A3.h **** 
 204:./common/lib_AT91SAM7A3.h **** 	pAic->AIC_SPU = (unsigned int) SpuriousHandler;
 205:./common/lib_AT91SAM7A3.h **** 	pAic->AIC_DCR = protectMode;
 206:./common/lib_AT91SAM7A3.h **** }
 207:./common/lib_AT91SAM7A3.h **** /* *****************************************************************************
 208:./common/lib_AT91SAM7A3.h ****                 SOFTWARE API FOR PDC
 209:./common/lib_AT91SAM7A3.h ****    ***************************************************************************** */
 210:./common/lib_AT91SAM7A3.h **** //*----------------------------------------------------------------------------
 211:./common/lib_AT91SAM7A3.h **** //* \fn    AT91F_PDC_SetNextRx
 212:./common/lib_AT91SAM7A3.h **** //* \brief Set the next receive transfer descriptor
 213:./common/lib_AT91SAM7A3.h **** //*----------------------------------------------------------------------------
 214:./common/lib_AT91SAM7A3.h **** __inline void AT91F_PDC_SetNextRx (
 215:./common/lib_AT91SAM7A3.h **** 	AT91PS_PDC pPDC,     // \arg pointer to a PDC controller
 216:./common/lib_AT91SAM7A3.h **** 	char *address,       // \arg address to the next bloc to be received
 217:./common/lib_AT91SAM7A3.h **** 	unsigned int bytes)  // \arg number of bytes to be received
 218:./common/lib_AT91SAM7A3.h **** {
 219:./common/lib_AT91SAM7A3.h **** 	pPDC->PDC_RNPR = (unsigned int) address;
 220:./common/lib_AT91SAM7A3.h **** 	pPDC->PDC_RNCR = bytes;
 221:./common/lib_AT91SAM7A3.h **** }
 222:./common/lib_AT91SAM7A3.h **** 
 223:./common/lib_AT91SAM7A3.h **** //*----------------------------------------------------------------------------
 224:./common/lib_AT91SAM7A3.h **** //* \fn    AT91F_PDC_SetNextTx
 225:./common/lib_AT91SAM7A3.h **** //* \brief Set the next transmit transfer descriptor
 226:./common/lib_AT91SAM7A3.h **** //*----------------------------------------------------------------------------
 227:./common/lib_AT91SAM7A3.h **** __inline void AT91F_PDC_SetNextTx (
 228:./common/lib_AT91SAM7A3.h **** 	AT91PS_PDC pPDC,       // \arg pointer to a PDC controller
 229:./common/lib_AT91SAM7A3.h **** 	char *address,         // \arg address to the next bloc to be transmitted
 230:./common/lib_AT91SAM7A3.h **** 	unsigned int bytes)    // \arg number of bytes to be transmitted
 231:./common/lib_AT91SAM7A3.h **** {
 232:./common/lib_AT91SAM7A3.h **** 	pPDC->PDC_TNPR = (unsigned int) address;
 233:./common/lib_AT91SAM7A3.h **** 	pPDC->PDC_TNCR = bytes;
 234:./common/lib_AT91SAM7A3.h **** }
 235:./common/lib_AT91SAM7A3.h **** 
 236:./common/lib_AT91SAM7A3.h **** //*----------------------------------------------------------------------------
 237:./common/lib_AT91SAM7A3.h **** //* \fn    AT91F_PDC_SetRx
 238:./common/lib_AT91SAM7A3.h **** //* \brief Set the receive transfer descriptor
 239:./common/lib_AT91SAM7A3.h **** //*----------------------------------------------------------------------------
 240:./common/lib_AT91SAM7A3.h **** __inline void AT91F_PDC_SetRx (
 241:./common/lib_AT91SAM7A3.h **** 	AT91PS_PDC pPDC,       // \arg pointer to a PDC controller
 242:./common/lib_AT91SAM7A3.h **** 	char *address,         // \arg address to the next bloc to be received
 243:./common/lib_AT91SAM7A3.h **** 	unsigned int bytes)    // \arg number of bytes to be received
 244:./common/lib_AT91SAM7A3.h **** {
 245:./common/lib_AT91SAM7A3.h **** 	pPDC->PDC_RPR = (unsigned int) address;
 246:./common/lib_AT91SAM7A3.h **** 	pPDC->PDC_RCR = bytes;
 247:./common/lib_AT91SAM7A3.h **** }
 248:./common/lib_AT91SAM7A3.h **** 
 249:./common/lib_AT91SAM7A3.h **** //*----------------------------------------------------------------------------
 250:./common/lib_AT91SAM7A3.h **** //* \fn    AT91F_PDC_SetTx
 251:./common/lib_AT91SAM7A3.h **** //* \brief Set the transmit transfer descriptor
 252:./common/lib_AT91SAM7A3.h **** //*----------------------------------------------------------------------------
 253:./common/lib_AT91SAM7A3.h **** __inline void AT91F_PDC_SetTx (
 254:./common/lib_AT91SAM7A3.h **** 	AT91PS_PDC pPDC,       // \arg pointer to a PDC controller
 255:./common/lib_AT91SAM7A3.h **** 	char *address,         // \arg address to the next bloc to be transmitted
 256:./common/lib_AT91SAM7A3.h **** 	unsigned int bytes)    // \arg number of bytes to be transmitted
 257:./common/lib_AT91SAM7A3.h **** {
 258:./common/lib_AT91SAM7A3.h **** 	pPDC->PDC_TPR = (unsigned int) address;
 259:./common/lib_AT91SAM7A3.h **** 	pPDC->PDC_TCR = bytes;
 260:./common/lib_AT91SAM7A3.h **** }
 261:./common/lib_AT91SAM7A3.h **** 
 262:./common/lib_AT91SAM7A3.h **** //*----------------------------------------------------------------------------
 263:./common/lib_AT91SAM7A3.h **** //* \fn    AT91F_PDC_EnableTx
 264:./common/lib_AT91SAM7A3.h **** //* \brief Enable transmit
 265:./common/lib_AT91SAM7A3.h **** //*----------------------------------------------------------------------------
 266:./common/lib_AT91SAM7A3.h **** __inline void AT91F_PDC_EnableTx (
 267:./common/lib_AT91SAM7A3.h **** 	AT91PS_PDC pPDC )       // \arg pointer to a PDC controller
 268:./common/lib_AT91SAM7A3.h **** {
 269:./common/lib_AT91SAM7A3.h **** 	pPDC->PDC_PTCR = AT91C_PDC_TXTEN;
 270:./common/lib_AT91SAM7A3.h **** }
 271:./common/lib_AT91SAM7A3.h **** 
 272:./common/lib_AT91SAM7A3.h **** //*----------------------------------------------------------------------------
 273:./common/lib_AT91SAM7A3.h **** //* \fn    AT91F_PDC_EnableRx
 274:./common/lib_AT91SAM7A3.h **** //* \brief Enable receive
 275:./common/lib_AT91SAM7A3.h **** //*----------------------------------------------------------------------------
 276:./common/lib_AT91SAM7A3.h **** __inline void AT91F_PDC_EnableRx (
 277:./common/lib_AT91SAM7A3.h **** 	AT91PS_PDC pPDC )       // \arg pointer to a PDC controller
 278:./common/lib_AT91SAM7A3.h **** {
 279:./common/lib_AT91SAM7A3.h **** 	pPDC->PDC_PTCR = AT91C_PDC_RXTEN;
 280:./common/lib_AT91SAM7A3.h **** }
 281:./common/lib_AT91SAM7A3.h **** 
 282:./common/lib_AT91SAM7A3.h **** //*----------------------------------------------------------------------------
 283:./common/lib_AT91SAM7A3.h **** //* \fn    AT91F_PDC_DisableTx
 284:./common/lib_AT91SAM7A3.h **** //* \brief Disable transmit
 285:./common/lib_AT91SAM7A3.h **** //*----------------------------------------------------------------------------
 286:./common/lib_AT91SAM7A3.h **** __inline void AT91F_PDC_DisableTx (
 287:./common/lib_AT91SAM7A3.h **** 	AT91PS_PDC pPDC )       // \arg pointer to a PDC controller
 288:./common/lib_AT91SAM7A3.h **** {
 289:./common/lib_AT91SAM7A3.h **** 	pPDC->PDC_PTCR = AT91C_PDC_TXTDIS;
 290:./common/lib_AT91SAM7A3.h **** }
 291:./common/lib_AT91SAM7A3.h **** 
 292:./common/lib_AT91SAM7A3.h **** //*----------------------------------------------------------------------------
 293:./common/lib_AT91SAM7A3.h **** //* \fn    AT91F_PDC_DisableRx
 294:./common/lib_AT91SAM7A3.h **** //* \brief Disable receive
 295:./common/lib_AT91SAM7A3.h **** //*----------------------------------------------------------------------------
 296:./common/lib_AT91SAM7A3.h **** __inline void AT91F_PDC_DisableRx (
 297:./common/lib_AT91SAM7A3.h **** 	AT91PS_PDC pPDC )       // \arg pointer to a PDC controller
 298:./common/lib_AT91SAM7A3.h **** {
 299:./common/lib_AT91SAM7A3.h **** 	pPDC->PDC_PTCR = AT91C_PDC_RXTDIS;
 300:./common/lib_AT91SAM7A3.h **** }
 301:./common/lib_AT91SAM7A3.h **** 
 302:./common/lib_AT91SAM7A3.h **** //*----------------------------------------------------------------------------
 303:./common/lib_AT91SAM7A3.h **** //* \fn    AT91F_PDC_IsTxEmpty
 304:./common/lib_AT91SAM7A3.h **** //* \brief Test if the current transfer descriptor has been sent
 305:./common/lib_AT91SAM7A3.h **** //*----------------------------------------------------------------------------
 306:./common/lib_AT91SAM7A3.h **** __inline int AT91F_PDC_IsTxEmpty ( // \return return 1 if transfer is complete
 307:./common/lib_AT91SAM7A3.h **** 	AT91PS_PDC pPDC )       // \arg pointer to a PDC controller
 308:./common/lib_AT91SAM7A3.h **** {
 309:./common/lib_AT91SAM7A3.h **** 	return !(pPDC->PDC_TCR);
 310:./common/lib_AT91SAM7A3.h **** }
 311:./common/lib_AT91SAM7A3.h **** 
 312:./common/lib_AT91SAM7A3.h **** //*----------------------------------------------------------------------------
 313:./common/lib_AT91SAM7A3.h **** //* \fn    AT91F_PDC_IsNextTxEmpty
 314:./common/lib_AT91SAM7A3.h **** //* \brief Test if the next transfer descriptor has been moved to the current td
 315:./common/lib_AT91SAM7A3.h **** //*----------------------------------------------------------------------------
 316:./common/lib_AT91SAM7A3.h **** __inline int AT91F_PDC_IsNextTxEmpty ( // \return return 1 if transfer is complete
 317:./common/lib_AT91SAM7A3.h **** 	AT91PS_PDC pPDC )       // \arg pointer to a PDC controller
 318:./common/lib_AT91SAM7A3.h **** {
 319:./common/lib_AT91SAM7A3.h **** 	return !(pPDC->PDC_TNCR);
 320:./common/lib_AT91SAM7A3.h **** }
 321:./common/lib_AT91SAM7A3.h **** 
 322:./common/lib_AT91SAM7A3.h **** //*----------------------------------------------------------------------------
 323:./common/lib_AT91SAM7A3.h **** //* \fn    AT91F_PDC_IsRxEmpty
 324:./common/lib_AT91SAM7A3.h **** //* \brief Test if the current transfer descriptor has been filled
 325:./common/lib_AT91SAM7A3.h **** //*----------------------------------------------------------------------------
 326:./common/lib_AT91SAM7A3.h **** __inline int AT91F_PDC_IsRxEmpty ( // \return return 1 if transfer is complete
 327:./common/lib_AT91SAM7A3.h **** 	AT91PS_PDC pPDC )       // \arg pointer to a PDC controller
 328:./common/lib_AT91SAM7A3.h **** {
 329:./common/lib_AT91SAM7A3.h **** 	return !(pPDC->PDC_RCR);
 330:./common/lib_AT91SAM7A3.h **** }
 331:./common/lib_AT91SAM7A3.h **** 
 332:./common/lib_AT91SAM7A3.h **** //*----------------------------------------------------------------------------
 333:./common/lib_AT91SAM7A3.h **** //* \fn    AT91F_PDC_IsNextRxEmpty
 334:./common/lib_AT91SAM7A3.h **** //* \brief Test if the next transfer descriptor has been moved to the current td
 335:./common/lib_AT91SAM7A3.h **** //*----------------------------------------------------------------------------
 336:./common/lib_AT91SAM7A3.h **** __inline int AT91F_PDC_IsNextRxEmpty ( // \return return 1 if transfer is complete
 337:./common/lib_AT91SAM7A3.h **** 	AT91PS_PDC pPDC )       // \arg pointer to a PDC controller
 338:./common/lib_AT91SAM7A3.h **** {
 339:./common/lib_AT91SAM7A3.h **** 	return !(pPDC->PDC_RNCR);
 340:./common/lib_AT91SAM7A3.h **** }
 341:./common/lib_AT91SAM7A3.h **** 
 342:./common/lib_AT91SAM7A3.h **** //*----------------------------------------------------------------------------
 343:./common/lib_AT91SAM7A3.h **** //* \fn    AT91F_PDC_Open
 344:./common/lib_AT91SAM7A3.h **** //* \brief Open PDC: disable TX and RX reset transfer descriptors, re-enable RX and TX
 345:./common/lib_AT91SAM7A3.h **** //*----------------------------------------------------------------------------
 346:./common/lib_AT91SAM7A3.h **** __inline void AT91F_PDC_Open (
 347:./common/lib_AT91SAM7A3.h **** 	AT91PS_PDC pPDC)       // \arg pointer to a PDC controller
 348:./common/lib_AT91SAM7A3.h **** {
 349:./common/lib_AT91SAM7A3.h ****     //* Disable the RX and TX PDC transfer requests
 350:./common/lib_AT91SAM7A3.h **** 	AT91F_PDC_DisableRx(pPDC);
 351:./common/lib_AT91SAM7A3.h **** 	AT91F_PDC_DisableTx(pPDC);
 352:./common/lib_AT91SAM7A3.h **** 
 353:./common/lib_AT91SAM7A3.h **** 	//* Reset all Counter register Next buffer first
 354:./common/lib_AT91SAM7A3.h **** 	AT91F_PDC_SetNextTx(pPDC, (char *) 0, 0);
 355:./common/lib_AT91SAM7A3.h **** 	AT91F_PDC_SetNextRx(pPDC, (char *) 0, 0);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -